SQL:清理数据库,检查没有违规并可能回滚

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL:清理数据库,检查没有违规并可能回滚相关的知识,希望对你有一定的参考价值。

我想清理一些DEV DB。我有脚本做了很多“删除”,我没有写。我不确定他们是否会将数据库保持在正确的状态(这是一个开发数据库所以它不是那么糟糕,但仍然......)。

我想知道,如果删除后数据库违规,我可以将我进入事务的SQL清理脚本包装并回滚到prev DB状态吗?

基本上我有:

delete from aaa
delete from bbb
...
delete from zzz

而且我想这样做:

delete from aaa
delete from bbb
...
delete from zzz
check for violation <-- how do I do this ?

并将其包装在事务中或可以回滚的内容中。

我该怎么做? (它是Oracle 10,但标准SQL会很好)。

答案

使用oracle执行某些语句时使用它来确保没有自动提交(通常默认为OFF)

SET AUTOCOMMIT OFF

然后你可以做一个COMMIT,当你确定每件事都没问题或ROLLBACK,如果不是

以上是关于SQL:清理数据库,检查没有违规并可能回滚的主要内容,如果未能解决你的问题,请参考以下文章

自治事务中的 Oracle DDL

如何在 Rails 中清理 sql 片段

设置 xact_abort 并尝试一起捕捉

是否有符合 Checkstyle 格式规则的 Eclipse“清理”配置文件?

休眠:java.sql.SQLException:事务回滚后尝试继续工作

Orientdb SubQuery Max Date