2014-07-25 23 views
0

基本上我有這樣的:如何在MySQL表中更新後觸發一個動作?

TABLE PARENTS 
... 
name VARCHAR(45) 
lastModified DATETIME 
idModified INT 
... 

TABLE CHILDRENS 
... 
name VARCHAR(45) 
parentName VARCHAR(45) 
lastModified DATETIME 
idModified INT 
... 

所以,我要的是,當我執行:

UPDATE CHILDRENS SET lastModified=NOW(), idModified=123 WHERE NAME='someName'; 

在parentName指定的父母還必須獲得與相同的數據進行更新。

我可以通過我使用的編程語言手動完成,但這不重要,我不想向數據庫發送另一個請求。編輯:我是新來的MySQL,我不知道如何使用觸發器,哦,我寫了孩子;我是新來的MySQL,我不知道如何使用觸發器,哦,我寫了孩子;我不知道如何使用觸發器,不好的語法,對不起。

+1

哼,你自己真的回答了這個問題。你創建一個'AFTER UPDATE'觸發器:) –

+0

如何使用觸發器? ;-) – schlonzo

回答

0

UNTESTED

CREATE TRIGGER triggers_name 
AFTER UPDATE 
ON 
CHILDRENS 
FOR EACH ROW 
    UPDATE PARENTS,NEW 
     SET PARENT.lastModified=NEW.lastModified, 
      PARENT.idModified=NEW.idModified 
     WHERE PARENT.name=NEW.parentName 

希望現在的工作becouse我不能馬上測試一下:/

+0

但觸發器必須指定childen內部的值而不是NOW()和123,該觸發器是否適用於任何值? – Felishia

+0

等待我將更新 – Youness

+0

現在它將與任何值:) – Youness

相關問題