2016-07-27 29 views
0

を実行します:1、私は情報を保存する場所を、表2は、ここで更新テーブル1の後にトリガーが充填されている挿入値の後に、私はこのような構造を持つ2つのテーブル持っトリガー

ID | Revision | Purpose 
------------------------- 
1 |  A  | 3 

表はトリガーです:

TRIGGER `update` AFTER UPDATE ON `table 1` 
FOR EACH ROW INSERT INTO table 2 (
Id, 
Revision, 
Purpose, 
) 
VALUES 
(
OLD.Id, 
OLD.Revision, 
OLD.Purpose, 
); 
$$ 
DELIMITER ; 

すべての罰金が、今はこれに表2の構造を変更したい:

ID | Revision | Purpose | Change 
----------------------------------- 
1 |  A  | 1  | Purpose change to 1 

私は、フィールドを作成してみてください、その後、いつものように更新を行うユーザーは、表1からの変更内容の説明を記述して、表2

に保存することができますことをしたい:

Update Table 1 ...... where Id = Id 

そして、これテーブル2は同じIdを持つ行をたくさん持つことができるので、これはオプションではありません。どんな解決策ですか?

また、私はあまりにも表1にフィールドの作成を試みるが、これは、私はすべての私のコードを変更する必要がありますが、私は唯一のあなたはMySQLの変数を使用することができます。2.

答えて

0

表には、このフィールドをしたいということを意味:

1:

set @purpose_change = 'Purpose change to 1'; 

2:table 1を更新する前に、@purpose_change変数ユーザーを設定し、次のようにまた、あなたが引き金変更:

@purpose_changeは同じ接続で存在します。

関連する問題