所以我有三张桌子。前两个有 ID 列和“rank”列(一个整数)。我将在第三个表中插入两个 ID(ID1、ID2),但我需要触发器来检查它们是否是相同的等级,然后才能插入。我无法让它工作。
CREATE OR REPLACE TRIGGER TRIGGER1
AFTER INSERT ON TABLE_C
BEGIN
IF NOT EXISTS (
SELECT TABLE_A.id, TABLE_B.id
FROM TABLE_A JOIN TABLE_B ON TABLE_A.rank = TABLE_B.rank
WHERE TABLE_A.id = inserted.id1 AND TABLE_B.id = inserted.id2 )
THEN
PRINT 'Not the same rank'
ROLLBACK
END
END;
我正在使用 Oracle 数据库。