Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 检查更新后的更改_Sql_Oracle - Fatal编程技术网

Sql 检查更新后的更改

Sql 检查更新后的更改,sql,oracle,Sql,Oracle,我想检查表中的值是否在更新过程后更改,并将sysdate存储在列中。对于更新,我使用了一个包含60多个参数(表中的列数)的存储过程。每次用户在UI中单击“保存”按钮时,都会调用存储过程。有人知道我怎样才能做到这一点吗? 我提到由于性能策略,我不能使用触发器。 谢谢大家! 也许我遗漏了一些东西,但是为什么存储过程不能在UPDATE语句中简单地包含'LAST_MODIFIED'列(或其名称),将其设置为SYSTIMESTAMP?在更新之前是否可以将该行捕获到局部变量中,并将参数值与之进行比较?我不能

我想检查表中的值是否在更新过程后更改,并将
sysdate
存储在列中。对于更新,我使用了一个包含60多个参数(表中的列数)的存储过程。每次用户在UI中单击“保存”按钮时,都会调用存储过程。有人知道我怎样才能做到这一点吗? 我提到由于性能策略,我不能使用触发器。
谢谢大家!

也许我遗漏了一些东西,但是为什么存储过程不能在UPDATE语句中简单地包含'LAST_MODIFIED'列(或其名称),将其设置为SYSTIMESTAMP?在更新之前是否可以将该行捕获到局部变量中,并将参数值与之进行比较?我不能包括最后修改的列,因为存储过程总是更新表中的所有列。。。要捕获一个变量中的所有行,我必须使用60多条if语句。当然,我可以这样做,但是如果有人每次向我的表中添加一个新列,就会被迫进行一个新的if…添加一个新列时,你无论如何都必须编辑该过程。也许我不明白:你想只在至少有一列实际更改的情况下更新上次修改的列吗?