【发布时间】:2015-02-08 10:34:52
【问题描述】:
如果我有 3 列并且我的程序可以更新所有 3 列,我将有一个更新查询:
Update table set col1 = @value1, col2 = @value2, col3 = @value3
除了将所有旧值存储到变量中,然后在提交更新后将它们与表中的值进行比较之外,还有什么可以找出发生了什么变化,也许什么没有发生变化?
【问题讨论】:
-
“找出”是什么意思?你想做什么?
-
好吧,我正在尝试为我的程序创建一个日志,如果我有一个表格,它可以在包含客户信息的表上添加新/更新数据,如果用户插入新信息我'将其记录为“新数据”,如果他们更新了旧信息,我想将其记录为“更新数据”以及发生的变化,比如他们可能更改了客户的姓名或地址或电话号码等
-
@CodeCaster 目前我只是在表格中插入我需要的信息,比如用户登录的用户名、计算机名、本地 ip 等等
-
然后您可以在@Manu 建议的触发器中执行此操作。让触发器在您的日志表中插入更改的数据。这是否可维护是另一个问题。