今天在导数据时,卡在一个表那里,等的不耐烦,就终止了,估计是表空间的大小可能不够,准备删掉表空间重建,在删表空间的过程 中,提示ora 38301的错误,删除失败,删其他表空间就没有问题。
到网上查了了一下,有这样的说法:导入表时执行有误,导致表名是很长一段代码如:BIN$/+V0R6/AQW79MAGuCgE+TQ==$0 无法删除
purge table "tablename" 表名要加双引号才行。
这个应该是我不能删除表空间的原因了,我用toad登陆数据库,查看到有constraints里有类似BIN$/+V0R6/AQW79MAGuCgE+TQ==$0的东西。
解决过程:
在sqlplus下运行purge table test.
"BIN$/+V0R6/AQW79MAGuCgE+TQ==$0"
提示表已经删除。
再运行drop tablespace test including contents,
问题解决。
ps
ORA-38301: can not perform. DDL/DML over objects in Recycle Bin
〖原理(Cause) 〗
在Oracle10g中,引入了一个回收站(Recycle Bin)的概念。回收站,从原理上来说就是一个数据字典表,放置用户Drop掉的数据库对象信息。被用户Drop的对象并没有被Oracle删除,仍然会占用空间。除非是用户手工进行Purge或者因为存储空间不够而被Oracle清掉。有了回收站,能够减少很多不必要的麻烦。常常看到开发人员误删除表,我们可以充分利用10g的闪回(FLASHBACK)功能来避免类似的人为操作。不能对已经放到回收站(Recycle Bin)中的对象执行DDL/DML语句。
〖方法(Action) 〗
如果真的想彻底删除这个表,可以使用下面的命令清空回收站。
SQL〉PURGE RECYCLEBIN;
分享到:
相关推荐
然而,需要注意的是,一旦对象进入回收站,就不能对其执行DDL(Data Definition Language)或DML(Data Manipulation Language)操作,例如创建、修改或删除。尝试这样做将返回如 `ORA-38301` 这样的错误。因此,...
2. **权限验证**:确保GoldenGate用户拥有足够的权限执行DDL语句。 3. **DDL语句捕获**:启用GoldenGate的DDL捕获功能,确保所有DDL语句都能被GoldenGate正确捕获。 4. **性能监控**:监控GoldenGate进程的性能,...
然而,在解决了`argument$`表的问题后,当再次尝试删除操作时,可能会遇到另一个错误:ORA-00604和ORA-38301,这表明对象存在于回收站中,不允许执行DDL/DML操作。 #### 解决回收站中的对象问题 1. **清除回收站**...
接下来,可以通过调用这些脚本来执行相应的DDL操作,比如禁用回收站: ```sql alter system set recyclebin = off; ``` 对于某些特定的操作,如设置标记(marker),可能还需要进一步的提示输入相关信息: ```sql...
学员应学习SQL的基本语法,如SELECT语句用于查询数据,INSERT、UPDATE和DELETE语句用于修改数据,以及DDL(Data Definition Language)用于创建和修改数据库对象。 3. PL/SQL编程:PL/SQL是Oracle特有的过程化语言...
5. DDL(数据定义语言):CREATE、ALTER、DROP等命令用于创建、修改和删除数据库对象,如表、视图、索引等。 6. DML(数据操纵语言):INSERT、UPDATE、DELETE以及SELECT语句,用于操作数据库中的数据。 四、Oracle...
- **删除Oracle中奇怪的表名称BIN$…的方法**:这类表通常是由于Oracle的回收站功能导致的,可以通过禁用回收站或手动清理回收站中的对象来解决。 #### 十三、扩展课程 **扩展课程内容**: - **SQL语句处理过程**...
本文将对Oracle 10中的核心知识点进行详细阐述。 一、Oracle 基本概念 Oracle 是一个对象关系型数据库管理系统(ORDBMS),它具备支持多用户、处理大事务的能力,并注重数据的安全性和完整性控制。Oracle 具有良好...
此外,还有DDL(Data Definition Language)用于创建和管理数据库对象,DML(Data Manipulation Language)用于操纵数据,以及DCL(Data Control Language)用于权限控制。 4. **PL/SQL**:Oracle特有的编程语言,...
启动Oracle数据库通常通过运行初始化参数文件(init.ora或spfile.ora)和数据库实例的交互来完成,命令可能包括`startup`和`mount`。关闭数据库则使用`shutdown`命令,可选择立即关闭或等待所有会话结束。 6. **...
ALTER TABLE DROP PARTITION 等不支持使用 Flashback Table 进行回滚,因为这些操作属于数据定义语言(Data Definition Language, DDL),这类操作不会记录在事务回退段中,因此无法通过 Flashback Table 来撤销。...
权限分为系统权限和对象权限,前者允许用户执行特定的操作,后者则允许用户访问特定的数据库对象。 **3.5 Oracle 11g 的系统权限** 系统权限包括 `CREATE SESSION`, `CREATE ANY TABLE`, `CREATE VIEW` 等。 **...
读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。 2、startup mount dbname 安装启动,这种方式启动下可执行: 数据库日志归档、 数据库介质恢复、 使数据文件联机或脱机, ...
数据定义语言Data Definition Language(DDL),用来建立数据库、数据对象和定义其列。例如:CREATE、DROP、ALTER等语句。 数据操作语言Data Manipulation Language(DML),用来插入、修改、删除、查询,可以...
2. **执行SQLLoader命令**: ```shell sqlldr scott/oracle control=sqlldr.ctl ``` 通过这种方式可以将CSV文件中的数据导入到Oracle数据库中的指定表中。 #### 四、间接加载文件示例 如果希望使用更高效的加载...
### 阿里巴巴公司DBA笔试题知识点详解 #### 一、SQL Tuning 类 1. **列举几种表连接方式** - **INNER JOIN**:返回两个表中具有匹配值... - 使用`DBMS_METADATA.GET_DDL('TABLE', '<table_name>')`函数获取DDL语句。
读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。 2、startup mount dbname 安装启动,这种方式启动下可执行: 数据库日志归档、 数据库介质恢复、 使数据文件联机或脱机, ...
- 数据定义语言(DDL):用于创建、修改和删除数据库对象。 - 数据操纵语言(DML):用于插入、更新和删除数据。 - 数据查询语言(DQL):用于查询数据。 - 数据控制语言(DCL):用于管理权限和访问控制。 ###...