千家信息网

怎样进行Oracle Delete表的恢复

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,这篇文章将为大家详细讲解有关怎样进行Oracle Delete表的恢复,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Oracle Delete表恢复(
千家信息网最后更新 2025年01月22日怎样进行Oracle Delete表的恢复

这篇文章将为大家详细讲解有关怎样进行Oracle Delete表的恢复,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Oracle Delete表恢复(ODU)

表中数据被DELETE

· (1)将参数unload_deleted设置为YES

· (2)生成数据字典:unload dict

· (3)恢复表: unload table username.tablename


---模拟误删除

create table t0 as select * from dba_objects;

create table t0_bak as select * from t0;

select count(*) from t0; ---86159

delete t0 where object_id>85000; commit;

select count(*) from t0; ---84141

一:将参数unload_deleted设置为YES

二:生成数据字典

三:恢复表

rename t0 to tt0;

CREATE TABLE "CHEN"."T0"

(

"OWNER" VARCHAR2(30) ,

"OBJECT_NAME" VARCHAR2(128) ,

"SUBOBJECT_NAME" VARCHAR2(30) ,

"OBJECT_ID" NUMBER ,

"DATA_OBJECT_ID" NUMBER ,

"OBJECT_TYPE" VARCHAR2(19) ,

"CREATED" DATE ,

"LAST_DDL_TIME" DATE ,

"TIMESTAMP" VARCHAR2(19) ,

"STATUS" VARCHAR2(7) ,

"TEMPORARY" VARCHAR2(1) ,

"GENERATED" VARCHAR2(1) ,

"SECONDARY" VARCHAR2(1) ,

"NAMESPACE" NUMBER ,

"EDITION_NAME" VARCHAR2(30)

);

四:通过sqlldr将数据加载到数据库

5:验证数据

select count(*) from t0; ---86159

select * from t0 where object_id>85000;

关于怎样进行Oracle Delete表的恢复就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0