我正在编写一个触发器以在删除之前将一行复制到另一个表。我似乎无法让它只用一行。我在这里查看了很多帖子,他们将 where 语句设置为类似于 where id = existingId; 或类似的东西。我似乎无法弄清楚如何让触发器只复制一行。或者如何告诉它当前行是什么。我不能在 where 语句中使用表中的特定值(如 id、name 等),因为我不知道要选择哪一行。谢谢!
这是我到目前为止所拥有的:
create or replace TRIGGER archive_tbl
BEFORE DELETE ON STUDENT
BEGIN
INSERT INTO ARCHIVE_STUDENT (stdid, fname, lname, mi, majorid, address, city, state, zip, phone, advid)
SELECT * FROM STUDENT
WHERE ????
END;