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。
例如:mysql中delete语句
开始交易
从学⽣中选择*
从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
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论