|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
MySQLAB公司的一个高级开发者者表示,“这个特点使得MySQL可以根据你当前的系统的需要来进行调整。”oracle
ORACLE猎取DDL的几种经常使用的办法
刘颖博
工夫:2004-2-26
mail:liuyingbo@126.com,请斧正
转载请说明出处及作者
大致的分为三种办法:
一;能够经由过程toad、plsqldevelop品级三方工具举行导出DLL操纵,用这类举措的优点在于操纵复杂便利,但必要安装,上面复杂先容一下用这两个工具取得DLL语句的操纵。
1.起首是toad工具,能够到www.quest.com网站高低载
操纵步骤的扼要先容以下:
a.启动toad,毗连方针数据库
b.点击DBA->GenerateSchemaScript,如所示:
c.呈现的操纵界面:
经由过程操纵界面已很分明的,选择响应的Schema,固然能够经由过程其他的几个tab页面选择响应的前提,点击Execute按钮,ok。具体的操纵就不说了!
d.当导出操纵停止后,会呈现如的界面
我们能够将导出的DDL剧本另存(SavetoFile)大概copy到剪贴板上(Clipboard)。
2.上面说一下别的的一个工具plsqldevelop是怎样举行到出DDL语句的
操纵步骤以下:
a.启动plsqldevelop,毗连方针数据库
b.点击Tools->ExportTables,如
c.然后呈现上面界面,如
d.在如的界面上,选择响应的内容,然后点击Export按钮,ok,会呈现界面如,实在这些工具也是挪用Oracle的Exp工具罢了
假如你没有指定文件目次,文件会呈现在plsqldevelop软件的安装目次下。
好,上面先容第二种办法
二;间接经由过程EXP/IMP工具
Oracle供应的最原始最有用的导进导收工具,我们大致上能够分为三种举措完成导出DDL。
a.经由过程imp指定indexfile参数,但这类举措不爽在于有每行前会有REM
语法大致以下:
expuserid=...tables=emprows=nfile=emp.dmp
impuserid=...file=emp.dmpindexfile=emp.sql
b.经由过程imp指定show=y,同时指定log参数,格局上也不是很爽,在格局上很美妙的仍是经由过程工具导出的对照美妙
语法大致以下:
expuserid=...tables=emprows=nfile=emp.dmp
impuserid=...file=emp.dmpshow=ylog=emp.sql
c.使用unix下有strings命令,语法大致以下,这类办法对照文明:
expuserid=...tables=tab1rows=nfile=tab1.dmp
stringsemp.dmp>emp.sql
emp.sql中就有DLL语句了
第三种办法,是使用oracle9i的新特征,就是DBMS_METADATA包,来失掉DLL语句,这个也是本文要先容的重点
三;经由过程9i的DBMS_METADATA包失掉DLL语句
基础上用到的语法以下:
a.猎取单个的建表和建索引的语法
setheadingoff;
setechooff;
Setpages999;
setlong90000;
spoolDEPT.sql
selectdbms_metadata.get_ddl(TABLE,DEPT,SCOTT)fromdual;
selectdbms_metadata.get_ddl(INDEX,DEPT_IDX,SCOTT)fromdual;
spooloff;
b.猎取一个SCHEMA下的一切建表和建索引的语法,以scott为例:
setpagesize0
setlong90000
setfeedbackoff
setechooff
spoolscott_schema.sql
connectscott/tiger;
SELECTDBMS_METADATA.GET_DDL(TABLE,u.table_name)
FROMUSER_TABLESu;
SELECTDBMS_METADATA.GET_DDL(INDEX,u.index_name)
FROMUSER_INDEXESu;
spooloff;
c.猎取某个SCHEMA的建全体存储历程的语法
connectbrucelau/brucelau;
spoolprocedures.sql
select
DBMS_METADATA.GET_DDL(PROCEDURE,u.object_name)
from
user_objectsu
where
object_type=PROCEDURE;
spooloff;
另:
dbms_metadata.get_ddl(TABLE,TAB1,USER1)
三个参数中,第一个指定导出DDL界说的工具范例(此例中为表范例),第二个是工具名(此例中即表名),第三个是工具地点的用户名。
参考:
ZDNetChina《轻松获得Oracle布局形貌句法》
Oracle的官方文档
感激shangym(山水天雪桥)
与其他数据库相比,MySQL易学易用。 |
|