sql没有备份文件 如何回滚数据库前天在数据库执行了删除 *** 作后,如何回滚数据,没有备份文件的

sql没有备份文件 如何回滚数据库前天在数据库执行了删除 *** 作后,如何回滚数据,没有备份文件的,第1张

如果是 Oracle , 那么还有可能, 使用 Flashback Query 恢复得回来。

其他数据, 就不大清楚了。

下面是一个 Oracle 恢复的例子:

SQL> CREATE TABLE test_fb_table (

2 ID int,

3 VAL VARCHAR2(10)

4 );

Table created

SQL> INSERT INTO test_fb_table VALUES (1, 'TEST');

1 row created

SQL> commit;

Commit complete

假如 数据被错误的删除/更新

需要检索某个时间点上,表原有的数据。

SQL> SELECT TO_CHAR(sysdate, 'yyyy-mm-dd hh24:mi:ss') FROM dual;

TO_CHAR(SYSDATE,'YYYY-MM-DDHH24:MI:SS'

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

2010-11-07 13:01:37

这里删除掉数据。

SQL> delete from test_fb_table;

1 row deleted

SQL> commit;

Commit complete

确认数据已经被删除。

SQL> select from test_fb_table;

no rows selected

方法一:

这里检索出,指定时间点上,指定表的数据情况。

SQL> select from test_fb_table

2 AS OF TIMESTAMP TO_TIMESTAMP('2010-11-07 13:01:37',

3 'yyyy-mm-dd hh24:mi:ss');

ID VAL

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

1 TEST

方法二:

使用 dbms_flashback下面的方法来切换。

SQL> conn system

Enter password:

Connected

SQL> select from hrtest_fb_table;

no rows selected

SQL> execute dbms_flashbackenable_at_time(-

> TO_TIMESTAMP('2010-11-07 13:01:37','yyyy-mm-dd hh24:mi:ss'));

PL/SQL procedure successfully completed

SQL> select from hrtest_fb_table;

ID VAL

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

1 TEST

SQL> execute dbms_flashbackdisable;

PL/SQL procedure successfully completed

SQL> select from hrtest_fb_table;

no rows selected

CREATE PROC [dbo][notice_Delete] --- 同时删除该通知书和对应的节点

@tbl VARCHAR(30),

@pid INT

AS

BEGIN

DECLARE @tblname VARCHAR(30) ;

DECLARE @sql VARCHAR(1000) ;

SET @tblname = @tbl

SET @sql = 'delete ' + @tblname + ' where id ='

+ CONVERT(VARCHAR(10), @pid)

BEGIN TRAN --开始事务

EXEC ( @sql

)

IF ( @@rowcount = 0 ) --执行结果影响行数为0

BEGIN

ROLLBACK TRAN --回滚

END

ELSE

BEGIN

DELETE FROM tbl_treenotice

WHERE purposeid = @pid

IF ( @@rowcount = 0 ) --执行结果影响行数为0

BEGIN

ROLLBACK TRAN --回滚

END

ELSE

BEGIN

COMMIT TRAN --提交事务

END

END

END

$sql2 没发现错误 执行功 段验证 直接 print_r($r2) 看否真SQL错误 另外 !$r1 种写否判断错误 $r2 输错误 否 $r2 === false 许其 用 var_dump 查看

以上就是关于sql没有备份文件 如何回滚数据库前天在数据库执行了删除 *** 作后,如何回滚数据,没有备份文件的全部的内容,包括:sql没有备份文件 如何回滚数据库前天在数据库执行了删除 *** 作后,如何回滚数据,没有备份文件的、求救数据库回滚脚本怎么写、关于数据库事务回滚的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9295676.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存