只是想知道有關日誌數據修改。如何記錄在sql server表中更改的數據。哪種方法更好
我見過跟蹤數據變化(DML)的方法。
- 使用觸發器
- 在同一個表中保持列添加日期,添加者,修改日期,修改者。
使用方法(1),我可以寫觸發器,插入/刪除/更新每個表記錄的變化,因此可以應用在所有表按要求外鍵關係等方面的限制類似唯一鍵約束。
但我不明白它是如何可以應用使用方法(2)各種約束。 由於我必須製作複合獨特密鑰並且必須考慮更多的列。
數據庫表中是否存在任何設計問題。方法(2)記錄數據的建議方式是什麼?
哪種方法更好。
而且我來自我的一些同事知道,觸發器做不火批量插入查詢,是真的嗎?
好問題,我已經看到/使用了兩種方法,但都沒有看起來正確,我認爲rdbms應該提供一些內置功能。 –
在Sql Server 2008中,引入了一項新功能,即提供相同功能的** CDC「更改數據捕獲」**。但我擔心以前的版本。 –
CDC告訴你什麼改變了(包括實際數據),改變跟蹤告訴你哪些行已經改變,但是都沒有告訴你是誰做的。審計可能是您唯一的避免觸發器的內置功能,但它需要Enterprise。對於你的2.如果你不使用觸發器你如何捕獲特別更新的信息? –