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
在通过CASCADE-Oracle SQL删除之前,为多个表中的特定员工数据创建插入_Sql_Oracle - Fatal编程技术网

在通过CASCADE-Oracle SQL删除之前,为多个表中的特定员工数据创建插入

在通过CASCADE-Oracle SQL删除之前,为多个表中的特定员工数据创建插入,sql,oracle,Sql,Oracle,在通过级联删除之前,为多个表中的特定员工数据创建插入。假设员工“KING”在父表中有1条记录,在多个子表(例如32个表)中有大约3-7条记录 在删除记录的数据之前,我需要在一个自动化过程中将多个表中的数据作为插入进行备份 当我从父表中删除时,因为有级联打开,在单次快照中,从多个子表中删除与KING关联的所有数据,比如说删除32个表 但在最坏的情况下,如果我需要恢复,是否有聪明的方法在删除之前保存此数据的插入?查看触发器。您需要在删除之前创建触发器,以使用要删除的数据填充存档或历史记录表。Orac

在通过级联删除之前,为多个表中的特定员工数据创建插入。假设员工“KING”在父表中有1条记录,在多个子表(例如32个表)中有大约3-7条记录

在删除记录的数据之前,我需要在一个自动化过程中将多个表中的数据作为插入进行备份

当我从父表中删除时,因为有级联打开,在单次快照中,从多个子表中删除与KING关联的所有数据,比如说删除32个表


但在最坏的情况下,如果我需要恢复,是否有聪明的方法在删除之前保存此数据的插入?

查看触发器。您需要在删除之前创建触发器,以使用要删除的数据填充存档或历史记录表。Oracle文档中有大量的示例,这里和网上都有。感谢您的输入。我没有创建触发器的选项。(因为性能问题)当删除行时,什么会触发您的代码???您可以用过程替换触发器,但如何运行它?手动?只有触发器才能完成这项工作,其他什么都不行。每次我需要删除多个表中出现的特定员工数据时,我都可以手动运行存储过程来获取这些插入。是否有一些存储过程用于相同的操作?我怀疑您是否可以手动运行。除非!有一些事件,如前端的按钮或smth等,将触发您的程序。您需要一个事件来告诉您您的记录正在被删除,并且您需要在删除之前插入数据。但如果你能确定的话,做一些程序将插入到你的历史记录/归档表中。在数据被删除之前插入到你的表中很简单。您也可以在代码中考虑PrimaAutoSuxl事务。这很简单,只要读一下就可以了。我不知道你的确切要求。。。