我想创建一个PL / SQL脚本,它将从表中删除一些数据,它将返回一个包含备份INSERT语句的字符串。有没有直接的方法,如何以通用的方式生成这个插入语句?我喜欢比手动连接语句更好的东西。
我梦想这样的方法:SELECT * AS_INSERT_STATEMENT INTO my_string FROM my_table其中id> 10;
答案 0 :(得分:2)
评论时间有点长。
不,SQL中没有生成insert
语句的语法。相反,我建议您对returning
使用delete
子句。这将返回在另一个表中删除的值。你可以阅读它in the documentation。
然后,您可以从返回表中的值生成insert
语句代码。
但是,我怀疑为什么要删除记录,如果有可能取消删除它们。我建议你添加一个"删除"标记到您的记录,并只是更新标志。在实践中,我会将此标志设为一个日期,以便知道该行何时被删除。