0
私は3つのテーブルOldTable
,NewTable
およびMainTable
を持っています。私は古い値をOldTable
に入れ、新しい値をNewtable
に入れるトリガーを作った。更新が実行されたときに列からデータを取得
変更されたデータのみを取得する必要があります。
MainTable
EID Ename EAddress Emobile
1 mittal pardi 9876543212
2 vaibhav Porbandar 7456543212
OLD TABLE
ID EID Ename EAddress Emobile CurrentDate
1 2 vaibhav pardi 7456543212 2017-12-21 11:00:23.437
NEW TABLE
ID EID Ename EAddress Emobile CurrentDate
1 2 vaibhav Porbandar 7456543212 2017-12-21 11:00:23.437
私は必要なもの:
EID OldValue NewValue
2 pardi Porbandar
新しい値と古い値が複数存在することがあります。
マイトリガーコード:
ALTER TRIGGER [dbo].[trg_TEST_Upd]
ON [dbo].[MAIN_TABLE]
FOR UPDATE
AS
begin
SELECT * FROM INSERTED -- show data in INSERTED logical table
SELECT * FROM DELETED -- show data in DELETED logical table
insert into New_TABLE(EID,Ename,EAddress,Emobile,CurrentDate)
select EID,Ename,EAddress,Emobile,getdate() from INSERTED
insert into OLD_TABLE(EID,Ename,EAddress,Emobile,CurrentDate)
select EID,Ename,EAddress,Emobile,getdate() from DELETED
End
MySQLやSQLSERVERを? plzはタグを迷惑メールしないでください –
確かに、最も古いold_tableを現在のmain_tableと照合することで正味の変化を見つけることができますか?この場合、new_tableは無関係です。 –