【发布时间】:2013-04-16 05:00:10
【问题描述】:
例如,您删除了一个表中的一行,它链接到相应表中的条目。此触发器应在从第一个表中删除元组时从第二个表中删除元组(假设它们的外键匹配的位置)。换句话说,级联删除。假装无法将级联删除选项添加到表中。
我正在使用 Oracle/SQL Plus,这是我的尝试:
CREATE OR REPLACE TRIGGER delCascade
BEFORE DELETE ON student
REFERENCING OLD AS oldRow
FOR EACH ROW
BEGIN
DELETE FROM taking
WHERE taking.studentnum = oldRow.studentnum;
END;
/
我不断收到警告:
Warning: Trigger created with compilation errors.
【问题讨论】:
-
无法获得有关这些编译错误的更多信息?
-
如果有办法获得更多信息,我不知道。但考虑到它是 Oracle,我可以假设它不会变得更具体。
-
它将变得更加具体。在收到警告后执行“显示错误”,它会告诉您实际错误及其所在的行号。不过,您在
oldRow之前缺少:。