oracle11g导出空表设置(oracle想导出空数据库及里面的空表)

:暂无数据 2026-08-31 09:00:01 :0

oracle11g导出空表设置(oracle想导出空数据库及里面的空表)

今天给各位分享oracle想导出空数据库及里面的空表的知识,其中也会对oracle想导出空数据库及里面的空表进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录

oracle想导出空数据库及里面的空表

设置导出表的rows字段值为n(不导出)就可以了。
命令行执行:
exp username/passwd@dbname tables= tablename file=filename.dmp rows=n
备注:rows默认为y,也就是说默认是导出数据的,如果想同时导出数据,那么不加这个字段就可以了。

oracle11g导出空表怎样设置

你好:如何在oracle 11g 中导出空表
  由于oracle 11g的 延迟段创建的新特性,导致在没有数据插入时,oracle是不会分配数据段的,进而导致exp 是不能导出11g数据库的空表的。
  当然采用expdp就不存在这个问题了。
  expdp hr/hr schemas=hr dumpfile=expdp.dmp directory=dbtest
  conn hr/hr
  select TABLE_NAME,NUM_ROWS from user_tables;
  TABLE_NAME NUM_ROWS
  ------------------------------ ----------
  LOCATIONS 23
  EMP_1 0
  PART_TIME_EMPLOYEES 0
  TEST3 5
  TEST1 5
  TEST 5
  PC_WELL_TEST 2
  PC_ALARM_SORT_TEST 1
  MVIEW_PC_WELL_TEST 2
  MV_CAPABILITIES_TABLE 14
  T 0
  TEST2
  SYS_EXPORT_SCHEMA_01
  SYS_EXPORT_SCHEMA_02
  HOURLY_EMPLOYEES 0
  COUNTRIES 25
  ADMIN_EXT_EMPLOYEES
  ADMIN_WORK_AREA
  EMPLOYEES 107
  DEPARTMENTS 27
  DIGITS 2
  REGIONS 4
  JOB_HISTORY 10
  JOBS 19
  24 rows selected.
  为什么这里的num_rows为空呢?
  那是因为表刚建立,数据字典中还没有这个表相关的统计信息呢。
  SQL》 select ’alter table ’||table_name||’ allocate extent;’ from user_tables where
  num_rows=0
  ’ALTERTABLE’||TABLE_NAME||’ALLOCATEEXTENT;’
  -----------------------------------------------------------
  alter table PART_TIME_EMPLOYEES allocate extent;
  alter table EMP_1 allocate extent;
  alter table T allocate extent;
  alter table HOURLY_EMPLOYEES allocate extent;
  所以对于网上一些在oracle11g上先使用手工分配extent 再使用exp来导数据库,在实际上效果不怎么地,反而是多次一举直接使用expdp来导oracle 11g数据库中空表来的方便多了。
  当然对那些要从11g导低版本,还是可以的采用这个办法,但是要注意,要么对所有相关的表进行分析系,然后使用上述那个批量脚本。或者不分析表,直接手工用ue分配extent的命令。
  SQL》 select TABLE_NAME,NUM_ROWS from user_tables where NUM_ROWS=0;
  TABLE_NAME NUM_ROWS
  ------------------------------ ----------
  PART_TIME_EMPLOYEES 0
  EMP_1 0
  T 0
  HOURLY_EMPLOYEES 0
  补充信息:
  USER_TABLES describes the relational tables owned by the current user. Its columns (except
  for OWNER) are the same as those in ALL_TABLES. To gather statistics for this view, use the
  DBMS_STATS package.
  收集表的统计信息:
  analyze table xxx compute statistics;
  or
  exec dbma_stats.gather_table_stats(’USER’, ’TABLE’);

如何在oracle中导出,导入数据

最近用到Oracle导出导入数据,在网上看了别人的一些文章,总结如下:
  Oracle导出导出有两中方式:一、利用exp imp导出导入;二、利用Oracel数据泵expdp impdp导出导入。
  一、利用exp imp导出导入
  exp imp 语法如下:
  exp:
  1) 将数据库orcl完全导出
    exp system/manager@orcl file=d:\orcl_bak.dmp full=y
  2) 将数据库中system用户的表导出
    exp system/manager@orcl file=d:\system_bak.dmp owner=system
  3) 将数据库中表table1,table2导出
    exp system/manager@orcl file=d:\table_bak.dmp tables=(table1,table2)
  4) 将数据库中的表customer中的字段mobile以"139"开头的数据导出
    exp system/manager@orcl file=d:\mobile_bak.dmp tables=customer query=\"where mobile like ’139%’ \"
  imp:
  1) 将备份文件bak.dmp导出数据库
    imp system/manager@orcl file=d:\bak.dmp
    如果数据表中表已经存在,会提示错误,在后面加上ignore=y就可以了。  
  2) 将备份文件bak.dmp中的表table1导入
    imp system/manager@orcl file=d:\bak.dmp tables=(table1)
  exp imp导出导入数据方式的好处是只要你本地安装了Oracle客户端,你就可以将服务器中的数据导出到你本地计算机。同样也可以将dmp文件从你本地导入到服务器数据库中。但是这种方式在Oracle11g版本中会出现一个问题:不能导出空表。Oracle11g新增了一个参数deferred_segment_creation,含义是段延迟创建,默认是true。当你新建了一张表,并且没用向其中插入数据时,这个表不会立即分配segment。
  解决办法:
  1、设置deferred_segment_creation参数为false后,无论是空表,还是非空表,都分配segment。
  在sqlplus中,执行如下命令:
  SQL》alter system set deferred_segment_creation=false;
  查看:
  SQL》show parameter deferred_segment_creation;
  该值设置后,只对后面新增的表起作用,对之前建立的空表不起作用,并且注意要重启数据库让参数生效。
  2、使用 ALLOCATE EXTEN
  使用 ALLOCATE EXTEN可以为数据库对象分配Extent,语法如下:
  alter table table_name allocate extent
  构建对空表分配空间的SQL命令:
  
  SQL》select ’alter table ’||table_name||’ allocate extent;’ from user_tables where num_rows=0
  批量生成要修改的语句。
  然后执行这些修改语句,对所有空表分配空间。
  此时用exp命令,可将包括空表在内的所有表导出。
  
  二、利用expdp impdp导出导入
  在Oracle10g中exp imp被重新设计为Oracle Data Pump(保留了原有的 exp imp工具)
  
  数据泵与传统导出导入的区别;
  1) exp和imp是客户端工具,他们既可以在客户端使用,也可以在服务端使用。  
  2) expdp和impdp是服务端工具,只能在Oracle服务端使用。
  3) imp只适用于exp导出文件,impdp只适用于expdp导出文件。
  
  expdp导出数据:
  1、为输出路径建立一个数据库的directory对象。
    create or replace directory dumpdir as ’d:\’;
    可以通过:select * from dba_directories;查看。
  2、给将要进行数据导出的用户授权访问。
    grant read,write on directory dumpdir to test_expdp;
  3、将数据导出
    expdp test_expdp/test_expdp directory=dumpdir dumpfile=test_expdp_bak.dmp logfile=test_expdp_bak.log schemas=test_expdp
    注意:这句话在cmd窗口中运行,并且最后不要加分号,否则会提示错误。因为这句话是操作系统命令而不是SQL。
  impdp导入数据:
    1、给将要进行数据导入的用户授权访问。
      grant read,write on directory dumpdir to test_impdp;
    2、将数据导入
      impdp test_impdp/impdp directory=dumpdir dumpfile=test_expdp_bak.dmp remap_schema=test_expdp:test_impdp

  最后:这些内容是我在查找资料时找到,由于比较杂乱,现在稍作整理,方便以后查阅。同时,如果能给需要的人提供一些帮助,那就再好不过了。

oracle exp不能导出空表,怎样才能导出空表的结构呢imp怎么导入空表结构

--空表不能导出是因为11g中的不曾插入数据的空表是不分配存储单元的,当前用户下直接执行:select ’alter table ’||table_name||’ allocate extent;’ from user_tables where num_rows=0,得到的结果是“‘给当前用户下的空表分配空间’的语句”,导出或复制这些语句,直接执行这些语句,然后再次执行导出语句,就能导出所有表(包含空表),直接导入就好了,就会包含所有空表

oracle 11g 导出时空表未导出如何把剩余的空表直接导出在导入到另一个服务器里

修改参数

alter system set deferred_segment_creation=false;

重新导出一个DMP,并在新库导入,有数据的表会报错,不存在的表会建立。

oracle怎么导出空表

导出一个完整数据库
exp system/manager file=bible_db log=dible_db full=y
导出数据库定义而不导出数据
exp system/manager file=bible_db log=dible_db full=y rows=n
希望能帮到你
你的情况主要是没有把FULL 子句设置为Y 就可以了。。。

oracle 11g 如何导出 某个用户的数据库

1、首先通过tode创建或者克隆新的数据库用户,如下图所示。

2、导出目标表准备好,空表无法导出表结构,然后打开运行命令,导出目标用户test所有数据库相关信息,如下图所示。

3、输入完成后,点击键盘上的回车,等待一会如下图所示。

4、最后导入目标用户new所有数据库相关信息,如下图所示。

5、最后如下图所示,就导出完成了。

怎样导出oracle中的表,包括空表

哪有那么麻烦?
进入plsql
找到table那个大项,点出来,下边会罗列出许多表
右键点中你所需要的那个表名
找到DBMS_Metadata
然后选项里有ddl
弹出来那个窗口就是你的表结构,拷贝出来直接在另一个库里执行就可以啦
-----------------------------补充------------------------
PLSQL里
tools下
export user objects of
按shift批量选择表
执行就行了

oracle 11g 如何给没数据库中没有记录的空表分配段

使用expdp代替exp导出
给这些没有分配的表插入一条数据然后删除,就可以分配空间了

如何在oracle11g中导出空表

之所以不能导出空表,是因为Oracle默认不会为空表分配segment,应对方法有三个
1、把deferred_segment_creation这个参数设置为false,这样新创建任何表都会自动分配segment,这样用逻辑导出就可以导出空表了,但是注意,在更改这个设置之前的空表还是不会分配segment的
2、可以在创建表的时候就手动分配segment
sql》create table TEST (XXX xxx,YYY yyy) segment creation immediate;
3、对于已经存在的空表,可以
sql》alter table TEST allocate extent;
希望能帮到题主!

关于oracle11g导出空表设置到此分享完毕,希望能帮助到您。

oracle11g导出空表设置(oracle想导出空数据库及里面的空表)

本文编辑:admin

更多文章:


用记事本写vbs代码(怎么把记事本改成vbs格式)

用记事本写vbs代码(怎么把记事本改成vbs格式)

各位老铁们好,相信很多人对用记事本写vbs代码都不是特别的了解,因此呢,今天就来为大家分享下关于用记事本写vbs代码以及怎么把记事本改成vbs格式的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年10月11日 17:23

asp是什么检查项目(医院血液检验项目RPR、TPPA、HIV-Ab各是什么意思)

asp是什么检查项目(医院血液检验项目RPR、TPPA、HIV-Ab各是什么意思)

“asp是什么检查项目”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看asp是什么检查项目(医院血液检验项目RPR、TPPA、HIV-Ab各是什么意思)!

2026年10月11日 10:20

汇编输出指令(用汇编语言循环指令在屏幕中间输出红底白字的“hello I am 720“)

汇编输出指令(用汇编语言循环指令在屏幕中间输出红底白字的“hello I am 720“)

各位老铁们好,相信很多人对汇编输出指令都不是特别的了解,因此呢,今天就来为大家分享下关于汇编输出指令以及用汇编语言循环指令在屏幕中间输出红底白字的“hello I am 720“的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看

2026年10月11日 07:20

本地搭建springboot项目(使用eclipse构建springboot项目)

本地搭建springboot项目(使用eclipse构建springboot项目)

各位老铁们,大家好,今天由我来为大家分享本地搭建springboot项目,以及使用eclipse构建springboot项目的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,

2026年10月11日 06:20

hump是什么意思?hump口语啥意思

hump是什么意思?hump口语啥意思

其实hump的问题并不复杂,但是又很多的朋友都不太了解hump是什么意思,因此呢,今天小编就来为大家分享hump的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 03:50

java入门神器好用吗(java 7入门经典适合初学者自学用吗)

java入门神器好用吗(java 7入门经典适合初学者自学用吗)

这篇文章给大家聊聊关于java入门神器好用吗,以及java 7入门经典适合初学者自学用吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月11日 02:40

unix文件系统采用(Unix采用树形文件系统,其中“树形文件系统”什么意思)

unix文件系统采用(Unix采用树形文件系统,其中“树形文件系统”什么意思)

大家好,如果您还对unix文件系统采用不太了解,没有关系,今天就由本站为大家分享unix文件系统采用的知识,包括Unix采用树形文件系统,其中“树形文件系统”什么意思的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月11日 00:50

数据可视化界面(FineBI的数据可视化组件设置界面分为哪些区域,错误的是)

数据可视化界面(FineBI的数据可视化组件设置界面分为哪些区域,错误的是)

大家好,关于数据可视化界面很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于FineBI的数据可视化组件设置界面分为哪些区域,错误的是的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,

2026年10月10日 22:20

arraycopy方法(java中数组之间的传值)

arraycopy方法(java中数组之间的传值)

这篇文章给大家聊聊关于arraycopy方法,以及java中数组之间的传值对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月10日 21:20

matlab2017和2018哪个好(发现matlab2018a占内存较多,下载了2016a的版本,这两个版本有什么不一样的区别吗)

matlab2017和2018哪个好(发现matlab2018a占内存较多,下载了2016a的版本,这两个版本有什么不一样的区别吗)

各位老铁们,大家好,今天由我来为大家分享matlab2017和2018哪个好,以及发现matlab2018a占内存较多,下载了2016a的版本,这两个版本有什么不一样的区别吗的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收

2026年10月10日 21:10

最近更新

红米note(红米note每年几月发布)
2026-10-11 18:50:19 浏览:0
热门文章

标签列表