mysql 删除最后100条_sql-如何回滚我在MySQL中的最后一个删除命令?

sql-如何回滚我在MySQL中的最后一个删除命令?

我不小心从表中删除了很多行...

如何退回?

我使用PuTTY执行查询。

如果您能安全地指导我,我将不胜感激。

10个解决方案

96 votes

如果您尚未进行备份,那么您会感到很费解。

Omry Yadan answered 2020-01-21T02:10:59Z

29 votes

如果尚未提交事务,请尝试rollback。如果已经提交事务(通过commit或退出命令行客户端),则必须从上次备份中还原数据。

Aaron Digulla answered 2020-01-21T02:10:39Z

13 votes

仅当您使用事务时,“回滚”才有效。 这样,您可以将查询分组在一起,如果其中只有一个失败,则可以撤消所有查询。

但是,如果您已经提交了事务(或使用常规的DELETE查询),则取回数据的唯一方法是从先前进行的备份中恢复数据。

Select0r answered 2020-01-21T02:11:24Z

5 votes

开始查询之前,请使用BEGIN TRANSACTION命令。 这样您就可以在任何时间点ROLLBACK。

例如:

开始交易

从学生中选择*

从Id = 2的学生中删除

从学生中选择*

回滚

从学生中选择*

Author PraWin answered 2020-01-21T02:12:14Z

3 votes

接受的答案并不总是正确的。 如果在MySQL上配置二进制日志记录,则可以将数据库回滚到仍然具有快照和binlog的任何先前位置。

7.5时间点(增量)恢复使用二进制日志是学习此功能的一个很好的起点。

Phil Lello answered 2020-01-21T02:12:39Z

2 votes

在MySQL中:

start transaction;

savepoint sp1;

delete from customer where ID=1;

savepoint sp2;

delete from customer where ID=2;

rollback to sp2;

rollback to sp1;

Shu Zhang answered 2020-01-21T02:12:58Z

0 votes

如果要回滚数据,首先需要执行autocommit = 0,然后执行查询删除,插入或更新。

执行查询后,然后执行回滚...

Kishore Kishore answered 2020-01-21T02:13:23Z

0 votes

我还从开发数据库中删除了一些值,但是我在QA数据库中具有相同的副本,因此我执行了一个生成脚本,并选择了“脚本数据类型”到“仅数据”选项,然后选择了表。

然后,我获得了具有相同数据的插入语句,然后在开发数据库上运行了脚本。

Nikki answered 2020-01-21T02:13:48Z

-1 votes

在Oracle中,这不是问题:

SQL> delete from Employee where id = '01';

1 row deleted.

SQL> select id, last_name from Employee where id = '01';

no rows selected

SQL> rollback;

Rollback complete.

SQL> select * from Employee where id = '01';

ID FIRST_NAME LAST_NAME START_DAT END_DATE SALARY CITY DESCRIPTION

---- ---------- ---------- --------- --------- ---------- ---------- ---------------

01 Jason Martin 25-JUL-96 25-JUL-06 1234.56 Toronto Programmer

Andreas answered 2020-01-21T02:14:08Z

-1 votes

回滚通常不适用于这些删除功能,并且肯定只有备份可以保存您。

如果没有备份,则无法还原它,因为在PuTTY上运行删除查询后,一旦触发删除查询,就会自动提交使用.sql文件的Derby。

ramakrishnan answered 2020-01-21T02:14:33Z

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值