oracle之 获取建表ddl语句
来源:这里教程网
时间:2026-03-03 11:37:55
作者:
以下内容转载自:http://www.cnblogs.com/andy6/p/8029334.html
经测试可以正常提取。
第一种方法是使用工具,如:
pl/sql developer,在【工具】--【导出用户对象】出现就可以得到建表脚本。
第二种方法是,sql语句。
DBMS_METADATA.GET_DDL包可以得到数据库的对象的ddl脚本。如下(SQLPLUS中执行):
1.得 到一个表的ddl语句:
SET SERVEROUTPUT ON
SET LINESIZE 1000
SET FEEDBACK OFF
set long 99999
set pagesize 4000
---去除storage等多余参数(可选)
SQL> EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
-- 获取ddl ##('TABLE','表名','用户名')
SQL> SELECT DBMS_METADATA.GET_DDL('TABLE','CBZS_DMCODE_DEP_TYPE','MOBILE_CBZS') FROM DUAL;
DBMS_METADATA.GET_DDL('TABLE','CBZS_DMCODE_DEP_TYPE','MOBILE_CBZS')
--------------------------------------------------------------------------------
CREATE TABLE "MOBILE_CBZS"."CBZS_DMCODE_DEP_TYPE"
( "TYPE_ONE" VARCHAR2(6),
"TYPE_ONE_DESC" VARCHAR2(30),
"TYPE_TWO" VARCHAR2(6),
"TYPE_TWO_DESC" VARCHAR2(30),
"TYPE_ONE_ORD" NUMBER,
"TYPE_TWO_ORD" NUMBER
) PCTFREE 0 PCTUSED 40 INITRANS 1 MAXTRANS 255 COMPRESS LOGGING
TABLESPACE "DM_TBS_001"
2.得到一个用户下的所有表,索引,存储过程的ddl
SELECT DBMS_METADATA.GET_DDL(U.OBJECT_TYPE, u.object_name) FROM USER_OBJECTS u where U.OBJECT_TYPE IN ('TABLE','INDEX','PROCEDURE');
3.得到所有表空间的ddl语句
SELECT DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name) FROM DBA_TABLESPACES TS;
4.得到所有创建用户的ddl
SELECT DBMS_METADATA.GET_DDL('USER',U.username) FROM DBA_USERS U;
另外,若执行不了该包,则需要正确安装好相应的包。
拓展:-- 通过dblink补数据
insert into MOBILE_CBZS.MSS_BMS_ZHIJU_YUSUAN select * from MOBILE_CBZS.MSS_BMS_ZHIJU_YUSUAN@oldhbdw;
编辑推荐:
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- Oracle查看历史TOP SQL
Oracle查看历史TOP SQL
26-03-03 - oracle sql优化之基数反馈(Cardinality feedback)问题
- APEX 动态操作案例学习
APEX 动态操作案例学习
26-03-03 - PostgreSQL通过mysql_fdw连通MySQL实战
PostgreSQL通过mysql_fdw连通MySQL实战
26-03-03 - Ubiquiti 推出 Wi-Fi 7 接入点 Unifi U7 Mesh:BE5000,兼容室内外环境
- Redis数据存储原理和结构解读
Redis数据存储原理和结构解读
26-03-03 - MySQL主从复制过滤配置的完整方案
MySQL主从复制过滤配置的完整方案
26-03-03 - Mysql严格模式小结
Mysql严格模式小结
26-03-03 - Oracle数据泵导入导出数据的实现
Oracle数据泵导入导出数据的实现
26-03-03 - 英特尔酷睿 Ultra 9 290HX Plus 处理器再曝:GeekBench 多核比 285HX 高 8%
