Mysql 有没有办法找出使用更新查询更新的内容?
如果我有3列,并且我的程序可以更新所有3列,我将有一个更新查询:Mysql 有没有办法找出使用更新查询更新的内容?,mysql,sql,.net,Mysql,Sql,.net,如果我有3列,并且我的程序可以更新所有3列,我将有一个更新查询: Update table set col1 = @value1, col2 = @value2, col3 = @value3 除了将所有旧值存储到变量中,然后在提交更新后将它们与表中的值进行比较外,是否还可以找出哪些更改了,哪些没有更改?您可以使用触发器(在触发器之后或之前),并在触发器中执行所需操作。如果您需要应用程序级别的数据,则除非存储旧值,否则这将无法工作。您可以在更新时在主表上设置触发器的历史表,以便在更新之前将旧
Update table set col1 = @value1, col2 = @value2, col3 = @value3
除了将所有旧值存储到变量中,然后在提交更新后将它们与表中的值进行比较外,是否还可以找出哪些更改了,哪些没有更改?您可以使用触发器(在触发器之后或之前),并在触发器中执行所需操作。如果您需要应用程序级别的数据,则除非存储旧值,否则这将无法工作。您可以在更新时在主表上设置触发器的历史表,以便在更新之前将旧值插入历史表。您所说的“查找”是什么意思?你想做什么?我正在尝试为我的程序创建一个日志,如果我有一个表单,可以在包含客户信息的表上添加新/更新数据,如果用户插入一个新信息,我会将其记录为“新数据”,如果他们更新了一个旧信息,我会将其记录为“更新数据”随着变化,比如他们可能改变了客户的姓名、地址或电话号码etc@CodeCaster目前,我只是将我需要的信息插入到一个表中,比如用户登录用户名、计算机名、本地ip,诸如此类,然后你可以在@Manu建议的触发器中这样做。让触发器在日志表中插入更改的数据。这是否可维护是另一个问题。