论坛上有位朋友提到:
“删除列以后怎么恢复数据
ora9i 数据库里面
有个朋友误操作,执行了
alter table xxx drop column xxx_col
被删除的列是有值的,
现在怎么才能找回来被删掉的列的值。
俺试了logmgr,可惜只能找到alter table的信息,
请大家看看有什么办法。”
===========================
下面我们就做个测试,呵呵
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
PL/SQL Release 9.2.0.4.0 - Production
CORE 9.2.0.3.0 Production
TNS for Linux: Version 9.2.0.4.0 - Production
NLSRTL Version 9.2.0.4.0 - Production
1.创建一张测试表
SQL> create table t (a number,b number);
Table created.
SQL> insert into t values (1,2);
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> commit;
Commit complete.
2。取得当前scn
SQL> col scn for 999999999999999999999
SQL> select dbms_flashback.get_system_change_Number scn from dual;
SCN
----------------------
306920
3.使用闪回查询
SQL> select * from t as of scn 306920;
A B
---------- ----------
1 2
1 2
1 2
可以看到在scn为306920有2列3行数据。
4。删除其中一列数据
SQL> alter table t drop column a;
Table altered.
5.再次使用闪回查询
SQL> select * from t as of scn 306920;
select * from t as of scn 306920
*
ERROR at line 1:
ORA-01466: unable to read data - table definition has changed
很显然,闪回查询不支持,因为此时表结构已经发生了变化。
发生这种情况,9i只能使用不完全恢复,恢复到306920,将数据库read only,然后导出表格T。10g碰到这种情况方便许多了,在闪回打开的情况下,只需要将数据库闪回到306920 read only打开即可。
分享到:
相关推荐
### 在Windows下彻底删除Oracle 9i的详细步骤 #### 一、引言 随着信息技术的发展,数据库管理系统在企业级应用中扮演着越来越重要的角色。Oracle数据库作为业界领先的数据库产品之一,被广泛应用于各种场景。然而,...
在“oracle9i310.msi”这个文件中,包含了Oracle 9i客户端的安装程序,用户只需运行此文件即可开始安装。 4. **使用说明.htm**:这个文件提供了关于如何使用客户端的指导,可能包括安装步骤、连接配置、基本操作等...
Oracle 9i RMAN(Recovery Manager)是Oracle数据库管理系统中的一个重要工具,专门用于数据库的备份和恢复。RMAN提供了一种高效、自动化的方式来管理数据库的备份策略,确保在数据丢失或系统故障时能够快速恢复。 ...
Oracle9i支持标准SQL,用于查询、插入、更新和删除数据。同时,它还提供了PL/SQL,一种过程化语言,允许编写复杂的业务逻辑和存储过程。通过这两个语言,用户可以实现对数据库的高效操作。 四、数据库管理与维护 ...
了解DDL(Data Definition Language)用于创建和修改表结构,DML(Data Manipulation Language)用于插入、更新和删除数据,以及PL/SQL,Oracle特有的过程式语言,用于编写复杂的存储过程和触发器。 "游侠下载站...
3. **删除数据文件**:手动删除Oracle的数据文件、日志文件和控制文件,这些通常位于ORACLE_HOME的datafile目录下。 4. **清理注册表**:使用注册表编辑器查找并删除所有Oracle相关的键值,防止遗留问题。 5. **...
Oracle9i提供三种预设模板:数据仓储、在线交易处理和通用目的。你可以根据实际应用需求选择合适的模板,或者选择“New Database”创建一个自定义的新模板。 输入数据库识别资料是关键步骤,包括全局数据库名称和...
通过阅读“Oracle9i数据库管理员指南”、“Oracle9i数据库管理实务讲座”以及“Oracle培训教材”,学习者可以系统地掌握Oracle 9i数据库的各个方面,为成为合格的数据库管理员打下坚实的基础。这些资料不仅涵盖理论...
在这个入门手册中,读者将学习到如何安装、配置和管理Oracle9i数据库,以及如何进行数据备份和恢复。 首先,手册会引导读者理解Oracle9i的基本概念,包括数据库的体系结构,如数据块、区、段、表空间和控制文件等。...
"第8章 Oracle9i数据库的恢复.ppt"将讨论数据库的备份和恢复策略,包括使用RMAN(恢复管理器)进行备份,理解归档日志模式,以及在数据丢失或系统故障时如何恢复数据。 "第7章 Oracle9i数据库的安全性.ppt"会介绍...
Oracle 9i支持标准的SQL语法,包括数据查询、插入、更新和删除,以及更复杂的子查询、联接和事务处理。 四、PL/SQL编程 PL/SQL是Oracle特有的过程化语言,结合了SQL的功能并增加了流程控制结构。通过学习PL/SQL,...
10. **删除ODBC数据源**:如有必要,清除所有Oracle相关的ODBC数据源设置。 11. **删除日志文件**:在“事件查看器”中,找出并删除Oracle的日志记录。 在某些情况下,某些DLL文件可能无法直接删除,这时只需在...
Oracle9i是一款经典的数据库管理系统,由甲骨文公司(Oracle Corporation)开发,广泛应用于企业级数据存储和管理。本教程是专为初学者设计的中文基础教程,旨在帮助那些对数据库系统了解不多的人快速掌握Oracle9i的...
"第四章:数据库利器---SQL"是关于结构化查询语言的基础教程,SQL是所有关系型数据库的通用语言,用于查询、插入、更新和删除数据。掌握SQL能有效提升数据库操作效率。 通过这套资料的学习,无论是初学者还是经验...
在Oracle 9I中,你需要学习如何使用DML(数据操纵语言)进行插入、更新和删除数据,以及如何使用DDL(数据定义语言)创建和修改表结构。此外,SQL的查询功能,如SELECT语句,能帮助你从数据库中提取所需信息。 性能...
Oracle 9i支持多种分区类型,如范围、列表、散列和复合分区,以及分区维护操作,如添加、删除和交换分区。 4. **并行执行**:并行查询(Parallel Query)允许数据库将大查询分割为多个并行任务,从而加快处理速度。...
Oracle 9i是基于SQL标准的,理解SQL语言的查询、更新和删除操作至关重要。 2. 安装与配置:Oracle 9i的安装过程包括软件安装、硬件需求分析、网络配置和实例创建。熟悉这些步骤能确保数据库系统的稳定运行。 3. ...
Oracle9i企业管理器是Oracle数据库管理系统的一个重要组件,它提供了全面的数据库管理和监控功能,使得DBA(数据库管理员)能够更有效地管理Oracle数据库环境。在这个详尽的教程中,我们将深入探讨Oracle9i企业管理...
Oracle9i教程还涉及到了数据库的备份与恢复策略,这是确保数据安全的关键环节。你将学习到如何使用RMAN(恢复管理器)进行数据库备份,以及如何在发生数据丢失时进行恢复操作。此外,也会介绍数据导入导出工具(如...
在Oracle 9i中,备份和恢复策略的制定和实施对于确保业务连续性和数据安全性至关重要。 首先,我们需要了解Oracle 9i中的备份类型。全备份是最基础的备份方式,它包括数据库的所有数据文件、控制文件、重做日志文件...