2011-03-15 101 views
0

我已經創建了這個ASP.Net應用程序,並且需要記錄用戶爲數據庫上的每個項目所做的工作。ASP.Net&SQL事件日誌

我正在使用SQL Express數據庫進行測試,但在部署時將其遷移到SQL Server 2008。

我決定添加到每個動作一定的查詢添加到tblLog我想要的數據,然後我可以看到所發生的事,例如:

Date  Description 
3/15/2011 Risk changed from 20 to 50 by xxxx 
3/14/2011 Complexity changed from 50 to 40 by xxxx 
3/14/2011 Project A removed as Dependency by xxxx 
3/13/2011 Project B added as Prerequisite by yyyy 
3/12/2011 Project C removed as Prerequiste by yyyy 

現在這個作品沒問題,除非我必須對每個查詢進行非常困難的代碼來執行任何可能的操作......我確信這不是最佳解決方案。

所以我的問題:是否有一種方法可以讓我從數據庫中提取那種事件日誌?在所有的SQL數據庫被修改之後,也許我可以直接從那裏獲取發生的事情。或者是否有更好的解決方案來創建事件日誌?

謝謝

回答

0

請注意,此表的大小不會爆炸在你身上。

如果將「description」分成多列,會更容易嗎?也許:

Date 
ChangedTable 
Action (add, remove, update) 
InitialValue 
NewValue 
UserID 
+0

謝謝,實際上我的事件日誌只是最終結果。表格以類似的方式設置。這更多的是如何以最好的方式填充表格。 – LanFeusT 2011-03-16 04:52:53