我在"patient"表中有一列"patient_dob"。现在我想在oracle数据库中创建一个触发器,这样患者就不能将未来的日期设置为他们的出生日期。所以我写了以下查询:
create or replace trigger test_trigger
before insert
on employees
for each row
BEGIN
IF patient_dob > sysdate
THEN
RAISE_APPLICATION_ERROR(-20950, 'date error');
END IF;
END;
但代码不起作用。有人能告诉我如何创建一个触发器来执行上述功能吗?感谢
尝试使用new
来识别列:
create or replace trigger test_trigger
before insert
on employees
for each row
BEGIN
IF :new.patient_dob > sysdate THEN
-------^
RAISE_APPLICATION_ERROR(-20950, 'date error');
END IF;
END;