如何在同一个表中插入新行之前删除行。我尝试使用触发器,但我读到它是不可能的,因为它可能导致死锁。
我还想在删除它之前将应删除的行保存到另一个表(例如表B),然后再插入一个新表(在表A中)。
还有其他方法吗?
PS:他们将拥有相同的密钥
答案 0 :(得分:0)
您可以使用UPDATE
...
UPDATE tbl
SET col1 = newCol1,
col2 = newCol2
WHERE etc = etc
如果您想将更新的行插入另一个表格,可以使用TRIGGER AFTER UPDATE
。
CREATE TRIGGER TriggerName ON Tbl
AFTER UPDATE
AS
INSERT INTO Log (Col1, Col2)
SELECT Col1, Col2
FROM deleted