Вы не можете использовать SYSDATE в контрольном ограничении. Согласно документации
Условия проверочных ограничений не могут содержать следующие конструкции:
blockquote>
- Подзапросы и выражения скалярного подзапроса
- Вызов функций, которые не являются детерминированными (CURRENT_DATE, CURRENT_TIMESTAMP, DBTIMEZONE, LOCALTIMESTAMP, SESSIONTIMEZONE, SYSDATE, SYSTIMESTAMP, UID, USER и USERENV)
- Вызов пользовательских функций
- Выделение столбцов REF ( например, с помощью функции DEREF)
- Вложенные столбцы или атрибуты таблицы
- Псевдоколонны CURRVAL, NEXTVAL, LEVEL или ROWNUM
- Константы даты, которые не полностью
Для 10g Release 2 (10.2) см. ограничение , и для 11g Release 2 (11.2) см. ограничение .
Помните, что ограничение целостности - это утверждение о данных таблицы, которое всегда истинно.
В любом случае: я не знаю точно, чего вы пытаетесь достичь, но я думаю, что вы могут использовать триггеры для этого поза.