我在asp.net上写了一个Bug跟踪系统,我需要跟踪bug更新并显示错误的历史记录,当前状态,更新等...
因此,我需要知道哪个字段已更改,并对数据执行某些操作。 我创建了另一个表,它有跟踪表字段和新值, 所以在更改时我插入一个更新程序键(在另一个表上,指明谁更改它以及何时更改),更改字段名称和新值。
使用c#工作真棒,但我需要更多的sql解决方案。
例如,我的更改表中的值字段可以是用于X TABLE,Y TABLE或我转换为字符串的简单数字或字符串的fk。
您对我的解决方案有什么看法? 你能提供更好的吗?
答案 0 :(得分:3)
SQL Server提供了更改数据捕获功能(开始使用文档的好地方是here)。
此功能维护表(以及数据库中的其他元素,如果需要)的更改表。当然,这种功能意味着修改数据时的开销。但它似乎正是你要找的东西。