2014-06-06 27 views
0

我有一個基本上「同步」一個數據庫中的表中的所有數據到另一個數據庫中的複製表的查詢。如何在通過INSERT/UPDATE/DELETE修改表時自動運行查詢?

下面是簡單的查詢:現在

TRUNCATE TABLE [Database2].[dbo].[USER_SYNC] 

INSERT INTO [Database2].[dbo].[USER_SYNC] 
SELECT * FROM [Database1].[dbo].[USER] 

,經過一番研究,我看看到使用觸發要做到這一點,但是,我讀了存儲過程和沉重的查詢,如這不應該在觸發器中使用。

因此,在插入,修改或刪除插入,修改或刪除數據庫1中的記錄時,我可以從SQL中自動運行此查詢的最佳方式是什麼?

如果我讀了關於觸發器是不正確的,那麼我將如何去爲我的程序創建一個?謝謝。

+1

使用'TRIGGER' :) –

回答

1

如果您需要同步表格,則無需在每次更新,刪除或插入時截斷一個表格。

  1. 創建用戶表的相同副本。
  2. 在更新上刪除原始用戶表上的插入觸發器時創建。
  3. 在觸發器更新中,一次只刪除或向複製表中插入一行 - 即更新,刪除或插入到原始用戶表中的行。這不會是一個沉重的查詢。

UPDATE:

+0

是啊,當然,我不知道爲什麼我沒有想到的,首先。這似乎很直接。現在將進一步研究如何創建這樣的觸發器並對其進行測試。感謝您的答覆。 – EliotE123

+0

不客氣。我用鏈接更新了答案。 – bancer