如何检查输入日期是否是两个选项之一。
我正在尝试创建一个具有注册日期('DD.MM.YYYY')的表格,并且注册应该只能在4月1日或10月1日才能进行。 我一直在尝试不同的方法,但无法使其发挥作用。
CREATE TABLE student
(
student_id CHAR(10),
enrollment_date DATE CHECK (enrollment_date = TO_DATE('01.04','DD.MM') OR enrollment_date = TO_DATE('01.10','DD.MM'))
);
和
CREATE TABLE student (
student_id CHAR(10),
enrollment_date DATE CHECK (enrollment_date = TO_DATE('01.04','DD.MM') OR enrollment_date = TO_DATE('01.10','DD.MM'))
);
在这两种情况下我都得到了:
ORA-02436:CHECK中错误指定了日期或系统变量 约束02436. 00000 - “错误地指定了日期或系统变量 在CHECK约束中“*原因:尝试使用日期 常量或系统变量,例如USER,在检查约束中 未在CREATE TABLE或ALTER TABLE中完全指定 声明。例如,指定的日期没有世纪。 *操作:完全指定日期常量或系统变量。设置事件10149允许约束,例如“a1> '10 -MAY-96'”, 允许在版本8之前创建的错误。