轻松取得Oracle结构描述句法

Oracle专家必须频繁地从Oracle里提取出表格或者索引的定义,并将它们移植到不同的系统里。从字典里提取出用于Oracle结构描述对象(例如,表格、索引、存储过程、触发器、顺序等等)的数据定义语言(Data Definition Language,DDL),在你将系统移植到新的平台上,以及当你想要在tablespace里预先创建对象的时候很有用。

一般来说,在Oracle的移植里,结构描述和DDL都是在目标数据库里创建的,然后使用Oracle里带有IGNORE=Y参数的imp工具将数据列导入到新的数据库里。IGNORE=Y这个参数会告诉Oracle要使新的DDL定义,而不是使用导入数据文件里的DDL。

在OracleArrayi之前,获取表格和索引的DDL是一个既费时又麻烦的过程。你可以运行带有ROWS=NO参数的导出工具――exp,但是其输出却由于每一行的引用字符串以及不佳的格式而很难重复使用。其他唯一的选择就是编写复杂的字典脚本(dictionary script),但是这些脚本可能无法对诸如IOT和嵌套表格这样的复杂对象使用。

但是在OracleArrayi里,你可以使用一个叫做dbms_metadata的新的工具包,它能够轻易地直接显示数据字典里的DDL和存储过程。使用这个强大的工具,你就可以提取出独立的对象或者整个Oracle的结构描述。最好的消息是,它很容易使用。你只用简单地执行dbms_metadata.get_ddl,并指定对象名,Oracle就会提取出马上能够使用的DDL。

要提取出整个表格以及用于EMP表格的索引,就要执行dbms_metadata. get_ddl,从DUAL里进行选择,再提供所有必需的参数,如Listing A所示。

其输出如Listing B所示。唯一却失的东西就是每个陈述式之后的结束分号(;)。为了说明问题,我将演示如何使用INDEX自变量将主要关键字作为表格DDL的一部分提取出来,或者单独提取出来。

要注意,你已经完成了表格和索引的定义,包括存储参数(例如,pctfree、pctused、freelists和freelist groups),以及tablespace存储和缓冲池指令(buffer pool directive)。

对于大范围的迁移,你可以修改dbms_metadata句法来提取出整个结构描述。正如你可以在Listing C里看到的,选择dbms_metadata. get_ddl并指定USER_TABLES和USER_INDEXES就能够轻易实现这一点。这个句法会提取出用于整个结构描述(在本例里,就是scott结构描述)的完整表格和索引定义。

oracle结构描,轻松取得Oracle结构描述句法相关推荐

  1. oracle进程结构中完成更新,Oracle 进程结构

    Oracle进程结构 进程是动态创建的,完成任务后就消亡:而程序是静态的实体,程序是可以复制.编辑的.进程强调的是执行过程,而程序仅仅是指令的有序集合:进程在内存中,程序在外存中. ORACLE分为用 ...

  2. Oracle数据库系统结构一(存储结构)

    1.Oracle数据库系统结构概述 Oracle数据库由存放在磁盘上的数据库(DB)和对磁盘上的数据库进行管理的数据库管理系统(DBMS)两部分构成,分别对应着数据库的存储结构和软件结构.  Orac ...

  3. oracle ebs hr模块表,oracle ebs常用表结构及分类模块.doc

    oracle ebs常用表结构及分类模块 Oracle application 表结构 表结构,WHO字段来实现 通过菜单HELP 下的HISTORY 来找表 2. 通过LAST_QUERY来判断所使 ...

  4. mysql导出oracle_如何将mysql中的表结构导出放入oracle中

    展开全部 将mysql中的表结构导出放入oracle中的方法: 1.导出mysql的表结构sql脚本,然后修改mysql中的数据类型为oracle中的数据类型: MySql与Oracle数据类型的62 ...

  5. 在Oracle中采用纵向和横向结构表

    在本文中,我将分析(关系)数据库中组织数据的不同方式,在本文的例子中,我采用Oracle进行阐述,但其他关系数据库面临同样的问题,这些关系数据库组织数据的方式既有优点也有缺点,将给以区分,据此读者可判 ...

  6. oracle复制表包括注释,oracle 快速复制表结构、表数据

    oracle 快速复制一张表,并在此创建索引,日志及并行度 复制表结构及其数据 create table table_name_new as select * from table_name_old ...

  7. ORACLE内存结构:PGA And UGA,ORACLE用户进程、服务器进程

    执行一个SQL语句 执行查询语句的过程: 用户进程执行一个查询语句如select * from emp where empno=7839 用户进程和服务器进程建立连接,把改用户进程的信息存储到PGA的 ...

  8. 轻松学编程--轻松学Oracle数据库(附光盘)

    查看书籍详细信息: 轻松学编程--轻松学Oracle数据库(附光盘) 编辑推荐 <轻松学Oracle数据库>本书中引用了大量的动手实践案例来讲解Oracle数据库中的各种知识,使读者能够更 ...

  9. Oracle 的基本特点,并完整描述安装过程

    Oracle 的基本特点,并完整描述安装过程: 基本特点: 1.Oracle数据库是关系型数据库: 2.Oracle数据库具有三大优点: 1.易于维护:都是使用表结构,格式一致: 2.易于操作:SQL ...

  10. ebnf描述c语言语句结构,EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则...

    Presentation on theme: "EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构:并用操作语义的方法描述对应的语义规则"- Pre ...

最新文章

  1. java setmnemonic_java – 关于setMnemonic的一些问题
  2. 修改overflow图标 修改ActionBar的三个点的图标
  3. 计算机技术题目,计算机技术题目.doc
  4. Java-Redis 热部署问题
  5. 用async 解放你的大脑
  6. graphpad两组t检验_独立双样本检验(假设检验)
  7. 新产品Wyn Enterprise 详解,立即预约公开课
  8. bzoj 3028 食物——生成函数
  9. HTML1个像素宽的代码,HTML5 Canvas中绘制一个像素宽的细线实现代码详情
  10. python少儿编程面试题-《与孩子一起学编程》python自测题
  11. 求两个数的最小公倍数方法汇总
  12. php开发微信会员系统,PHP实例:微信公众号实现会员卡领取功能
  13. mfs网络分布式文件系统、高可用、iscsi存储方式的mfs、fence
  14. 请教个问题,我想把数据中名字的重复值删掉,只保留年纪大的怎么整呢?
  15. 课程能力建设:提高五年制高职教学有效性的重要途径
  16. 前端基础知识第四章---CSS
  17. 互联网摸鱼日报(2022-12-26)
  18. CoppeliaSim基础:页面、视图、可视对象(相机/视觉传感器)
  19. python中单引号、双引号、三引号理解
  20. 关于Java垃圾回收问题的总结

热门文章

  1. 云计算和大数据的关系以及区别详细讲解
  2. 曲线运动与万有引力公式_【知识总结】物理必修二曲线运动与万有引力相关公式和规律...
  3. 从IOE看云行业的潜力
  4. 智能家居语音控制系统项目毕业答辩
  5. 自建pop邮件服务器,POP是什么?怎样开通?
  6. 简述 mybatis 事务的使用
  7. 关于芯片最高工作频率的计算
  8. github上这个项目有点意思,适合有女朋友的程序员
  9. 3.5.3 连接偏移量管理器
  10. docker安装prestodb大数据查询引擎