8

我刚刚运行了一个命令

update sometable set col = '1';

错误地没有指定 where 条件。是否可以恢复以前版本的表?

4

3 回答 3

11

除非你...

  1. 在运行查询之前启动事务,并且...
  2. 尚未提交交易

...那么不,您不走运,除非您可能自己制作的数据库以前版本的任何备份。

(如果您在手动输入查询时不使用事务,那么您可能希望在将来防止像现在这样的头痛。它们对于减轻已实现 5 秒后的错误非常宝贵。)

于 2010-05-15T07:19:44.217 回答
2

sql_safe_updates如果您担心再次做这种事情,请考虑在未来启用。

SET SESSION sql_safe_updates = 1
于 2010-05-15T18:06:36.817 回答
1

不。MySQL 确实支持某些表类型的事务,但是因为您要问这个问题,我敢打赌您没有使用它。

每个人都这样做一次。当你这样做两次时,你必须担心:)

于 2010-05-15T07:20:45.563 回答