2013-06-23 62 views
2

我不是mysql的專家。我在MySql中有數據庫。當刪除某些表中的行時,我想將它添加到另一個表中的主鍵中。我可以在執行刪除查詢之前執行此操作,從表中獲取該主鍵並將其從應用程序級別插入到另一個表中。但我想從數據庫級別做到這一點。我怎樣才能做到這一點?MySql刪除行並將其添加到另一個表?

+0

什麼是 「做一個從數據庫級」 是什麼意思? –

+0

我的意思是觸發器 – hmlasnk

回答

5

您正在搜索的是用「INSERT」語句創建「BEFORE DELETE」「TRIGGER」。谷歌它,你會發現如何做這樣的事情。

下面是一個例子:

DELIMITER $$ 

DROP TRIGGER `delete_personne`$$ 

CREATE TRIGGER `delete_personne` BEFORE DELETE on `personne` 
FOR EACH ROW 
BEGIN 
    INSERT INTO histo_personne SELECT OLD.initialespers,OLD.nompers,OLD.prenompers,OLD.datenaisspers,OLD.photopers,OLD.validepers,now(); 
END$$ 

DELIMITER ; 

來源:http://forums.mysql.com/read.php?99,140057,141249#msg-141249

+0

在你走的觸發器的路線考慮一個單一的交易與兩個命令:插入和刪除。 –

+0

他問它的「數據庫級別」。一種方法是創建一個用於刪除記錄的SP,第二種方法是創建一個我認爲是刪除的觸發器。 –

相關問題