Oracle11g的exp导出空表提示EXP-00011: 不存在
刚lg问我11g无法导出空表,实验了下,果真如此。
原因:11g默认创建一个表时不分配segment,只有在插入数据时才会产生(当然也可以强制分配),以节省磁盘空间。
对于已经存在的空表解决办法:
就是想办法让空表有segment,第一种:可以通过插入数据的方式(不想要这些数据可以回滚),只要有insert动作就会分配segment;
第二种:就是强制分配:alter table tablename allocate extent;
为了后面创建的表能直接分配segment:修改参数 deferred_segment_creation(11g新增的)。该参数即指是否延迟创建segment,默认为true。如果想让表创建时就分配 segment,那么久应该修改该参数为false即alter system set deferred_segment_creation=false;
实验:
deferred_segment_creation参数未做修改,默认的为true。
第一步:创建一个表test1,执行导出,结果提示该表不存在,如下截图所示
第二步:修改参数deferred_segment_creation为false后再导出,仍然出错(同上截图)
第三步:强制分配segment再导出 成功
SQL> alter table TEST1 allocate extent;
Table altered
第四步:在创建一个空表test2(注意此时deferred_segment_creation为false),执行导出 成功
附11g默认创建的表其sql如下:
create table TEST1
(
id NUMBER,
name VARCHAR2(255)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255;
而如果该表插入了数据或执行强制分配segment或创建该空表时已经将deferred_segment_creation参数设为false,则其创建后查看其sql为如下:
create table TEST2
(
id NUMBER,
name VARCHAR2(255)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
Oracle11g的exp导出空表提示EXP-00011: 不存在的更多相关文章
- Oracle11g使用exp导出空表
1.Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出. 2.设置deferred_segment_creation 参数为FALSE后,无论是 ...
- 转 一个oracle11g 使用exp导出空表丢失的问题分析及解决办法
用exp无法导出空表解决方法 最早的一次使用oracle 11g导出数据发现有的表丢失了,感觉莫名其妙的,后来终于找到原因了. 找到问题以后,再看看解决方案.11GR2中有个新特性,当表无数据时,不分 ...
- ORACLE 11G EXP导出空表方法
EXP在导出11G的库的时候,与过去10G,9I的版本有很大的差别. 就是没有数据的表是不会分配空间的. 从Oracle 11.2.0.1版本开始,Oracle又提供了一种新的空间分配方法: Crea ...
- oracle 11g用exp无法导出空表的解决方案
racle 11g中有个新特性,当表无数据时,不分配segment,以节省空间,当我们用exp导出空表时,无法导出. 解决方法是两个方面, 一是处理现有的空表,让其能导出: 二是设置参数,让后续的新的 ...
- Oracle 导出空表的新方法(彻底解决)
背景 使用Exp命令在oracle 11g 以后不导出空表(rowcount=0),是最近在工作中遇到一个很坑的问题,甚至已经被坑了不止一次,所以这次痛定思痛,准备把这个问题彻底解决.之所以叫新方法, ...
- Oracle11g中Exp命令空表不能导出的问题
http://www.jb51.net/article/43894.htm 一.不能导出空表的原因 1.Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空 ...
- 轻松解决oracle11g 空表不能exp导出的问题
轻松解决oracle11g 空表不能exp导出的问题 [引用 2012-9-22 18:06:36] 字号:大 中 小 oracle11g的新特性,数据条数是0时不分配segment,所以就不 ...
- Oracle11g在使用exp导出时不导出空表问题的解决办法
11G中有个新特性,当表无数据时,不分配segment,以节省空间 解决方法: 1.insert一行,再rollback就产生segment了. 该方法是在在空表中插入数据,再删除,则产生segmen ...
- Oracle11G R2用exp无法导出空表解决方法
在11G R2中有个新特性,当表无数据时,不分配segment,以节省空间Oracle当然在执行export导出时,空表则无法导出,但是还是有解决办法的: 解决方法: 一.insert一行,再roll ...
随机推荐
- C程序两则
<span style="font-size:24px;">#include<iostream> using namespace std; int *fun ...
- mysql的主从复制是如何实现的
前言 MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为 ...
- 开发错误12:gradle编译错误:Conflict with dependency com.android.support:support-annotations
在build.gradle中的configurations.all {}下添加:resolutionStrategy.force 'com.android.support:support-annota ...
- springMVC+mybatis 增删该操作后判断影响行数一直返回-2147482646
MyBatis发现更新和插入返回值一直为"-2147482646"的错误是由defaultExecutorType设置引起的,如果设置为BATCH,更新返回值就会丢失.mybati ...
- [转]看懂ExtJS的API
原文地址:http://www.cnblogs.com/youring2/archive/2013/03/05/2944004.html ExtJS的功能很强大,相应的其API也很庞大,并且看起来并不 ...
- easyui-datagrid 报错:TypeError: col is null
一般是由于设置的属性用到的列,如: idField:'aa', sortName:'bb' 等在 columns:[[{field:'cc',width:80,title:'列cc'}, {field ...
- C# web 获取服务端cookie
CookieContainer cookies = new CookieContainer(); string url = "http://120.24.56.48:8 ...
- js checkbox获取选中的值
//将选择标签 var addCode = function () { var codes = []; var elements = document.getElementsByName(" ...
- Chrome编辑了样式或者JS之后自动同步回本地工程
比如我用HBuilder进行调试,在Chrome上修改了几个样式,我们通常的做法是,拷贝修改后的地方,然后再进行覆盖. 现在有了全自动的操作,在Chrome上修改了样式之后,通过Sources的Sav ...
- JDBC链接MySQL
首先,这里的JavaWeb使用JDBC的方法与Java的使用方法相似,但是有不同之处: 在Java中导入驱动包以后,直接用DriverManager.getConnection()获取连接对象, 而在 ...