动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Oracle教程 ]的信息



本月文章推荐
.Oracle数据库数据对象分析(下).
.利用Oracle数据库存储和分析Unix.
.捕捉运行很久的SQL.
.Oracle中捕获问题SQL解决CPU过渡.
.ORACLE 截断字符串.
.Section 6. Solutions to common.
.oracle使用命令行导入导出方案.
.Client端不安裝Oracle而用PowerB.
.Linux下IPV4和IPV6的互操作性研究.
.提高ORACLE数据库的查询统计速度.
.用户如何有效地利用数据字典.
.oracle三大技术应用大会合为一体.
.部署和管理应用程序的 Oracle AS.
.轻松取得 Oracle 结构描述句法.
.PLSQL单行函数和组函数详解.
.Oracle弱智900问(1).
.Linux平台数据库大比拚(1).
.J2ME 2005移动开发这场竞赛的领跑.
.用Pro*C开发多线程应用程序.
.查看各种对象的SQL.

轻松取得 Oracle 结构描述句法

发表日期:2008-2-9 |



  Oracle专家必须频繁地从Oracle里提取出表格或者索引的定义,并将它们移植到不同的系统里。 从字典里提取出用于Oracle结构描述对象(例如,表格、索引、存储过程、触发器、顺序等等)的数据定义语言(Data Definition Language,DDL),在你将系统移植到新的平台上,以及当你想要在tablespace里预先创建对象的时候很有用。
  
  一般来说,在Oracle的移植里,结构描述和DDL都是在目标数据库里创建的,然后使用Oracle里带有IGNORE=Y参数的imp工具将数据列导入到新的数据库里。IGNORE=Y这个参数会告诉Oracle要使新的DDL定义,而不是使用导入数据文件里的DDL。
  
  在Oracle9i之前,获取表格和索引的DDL是一个既费时又麻烦的过程。你可以运行带有ROWS=NO参数的导出工具——eXP,但是其输出却由于每一行的引用字符串以及不佳的格式而很难重复使用。其他唯一的选择就是编写复杂的字典脚本(dictionary script),但是这些脚本可能无法对诸如IOT和嵌套表格这样的复杂对象使用。
  
  但是在Oracle9i里,你可以使用一个叫做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结构描述)的完整表格和索引定义。
  
  dbms_metadata工具也可以被用来提取保存在Oracle程序包里的源代码、PL/SQL和Java。使用dbms_metadata,存储过程或者函数也能够被轻易地提取出来。
  
  在Listing D的例子里,我提取出了所有同fred结构描述相关联的过程。
  
  dbms_metadata工具对于提取过程码尤其有用,因为原来所有的格式都被保留下来了。Listing E是dbms_metadata为存储过程所做出的输出。
  
  dbms_metadata所存在的问题
  
  同所有Oracle的新工具一样,dbms_metadata也有一些缺点。当你有一些带有外来要害字引用完整性(例如Oracle的references限制)的表格时,按照重新加载到另一个数据库里的正确顺序而使用dbms_metadata来提取表格DDL是非常好的。假如你没有按照外来要害字引用完整性的正确顺序来提取表格,那么就会有一个表格被添加,它会参照另一个还没有被添加表格的表格。进行这项更改将会涉及一个WHERE子句的加入,这个子句会查询dba_constraints和dba_cons_columns,以确定正确的表格顺序。
  
  尽管有这些看得到的缺点,但是dbms_metadata工具在从Oracle里提取DDL和过程代码上不失为一个理想的工具。Oracle未来的发行版会让dbms_metadata更加强大,对此我深信不疑。
上一篇:Oracle8i 中生成创建对象的 SQL 人气:328
下一篇:Oracle SQL 语言从入门到精通 人气:536
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-24 Sablog-X v2.0 预览版
2008-7-24 帝国备份王EmpireBak 2008 正式版
2008-7-24 网趣网上购物系统时尚版 v8.2
2008-7-24 纵横B2B电子商务系统XYECS!B2B v
2008-7-24 e路小说小偷 v1.2.0723
2008-7-24 凌风美女图片站程序 v2.2
2008-7-24 TOM15电影收索程序
2008-7-24 清风信息自动采集生成系统 v1.0
2008-7-24 QQ邮箱编辑器 v1.0 (小小菜刀ASP
2008-7-19 UltraEdit 简体中文增强版 14.10
2008-7-19 CentOS 5.2 i386 LiveCD
2008-7-19 Snapture多功能相机 v1.4
2008-7-19 iAcces中文输入法 v1.0Build016
2008-7-19 Cookbook烹饪秘籍 v2.5
2008-7-19 苹果专用DVD转换工具 v1.1.59汉化
2008-7-19 Modem修复软件ZiPhone修改版04.0
2008-7-19 AgileMessenger即时通讯工具美化
2008-7-19 Sketches画图软件 v0.7b6破解版


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵