获取oracle 11g中使用的create table命令

时间:2014-01-09 11:02:57

标签: sql oracle oracle11g

如何获取用于在oracle 11g中创建表的create table命令,以便我可以复制命令并在另一个数据库中运行它?请帮忙。

3 个答案:

答案 0 :(得分:3)

select dbms_metadata.get_ddl('TABLE', 'YOUR_TABLE_NAME_GOES_HERE')
from dual;

答案 1 :(得分:1)

尝试假脱机查询以下查询的输出,

SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)
     FROM USER_TABLES u;

像,

set pagesize 0
set long 90000
set feedback off
set echo off 

spool schema.sql 

SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name)
     FROM USER_TABLES u WHERE TABLE_NAME = '<your_table>';

spool off;

参考:http://www.dba-oracle.com/oracle_tips_dbms_metadata.htm

答案 2 :(得分:1)

请使用以下查询

select dbms_metadata.get_ddl('TABLE','YOUR_TABLE_NAME','YOUR_SCHEMA_NAME') from dual;

如果您使用SQL Developer,请选择表格名称,然后right click选择Open Declaration,然后点击打开的窗口上的SQL标签!

enter image description here