2
以下是我正在執行某些更新的虛擬表。在這裏,我只是操縱「名稱」列。我需要插入受影響的行,(比方說)我改變了第二個「ID」-2,然後我需要只有這一行應該被插入一個新的表中新的/更新的值。我試圖通過一個觸發器,但它嘔吐關於表突變的錯誤。如何在新表中插入受影響的行
ID NAME
================
1 Vaz
2 Dan
3 Steve
我希望數據插入的表具有與上述表和具有相同數據類型的相同列相同的結構。
請建議如果這可以用任何其他方式完成,或者我正在寫觸發器的錯誤代碼。這裏是我寫的代碼:
CREATE OR REPLACE TRIGGER HR.ins_temp
after UPDATE OF name ON HR.TEMP2 FOR EACH ROW
BEGIN
INSERT INTO temp3
(SELECT NAME
FROM temp2
WHERE (:new.NAME<>:old.NAME));
END;
temp2是操作tabel和temp3是新的。
像一個魅力工作, 非常感謝。 但如果有很多列呢?插入 – hashir
@hashir:是的,你需要這樣做,這就是SQL insert語句的工作原理。 –
非常感謝你的幫助兄弟! – hashir