日期:2014-05-18  浏览次数:20826 次

mssql 2005 如何获取每次更新的差异?
请问,mssql 2005 如何获取每次更新的差异?
比如
编号 张三 户籍地 户籍类型
---------------------------------
0001 张三 江西省九江 农村户口
update成了
0001 张三 江西省上绕 城镇户口
然后,需要做一个变动日志.
内容如下
 日期 编号 姓名 变动内容
-----------------------------------
2011-7-30 0001 王五 [户籍地]由江西省九江变更为江西省上绕,[户籍类型]由农村户口变更为城镇户口

原始需求:变改日志生成的变动内容直接可以加上模板,形成一个证明文件.
可以在储存过程或者触发器中处理.

------解决方案--------------------
由应用做这个工作是最好的

如果应用无法修改,可以增加表的触发器,每次复制旧记录到一个日志表
有专门的程序通过比较日志表的相邻记录产生你要的证明
------解决方案--------------------
找个表来记录,更新触发器里将原数据和新数据都写进去。