如何根据现有模式在 Oracle 中编写表结构?

Posted

技术标签:

【中文标题】如何根据现有模式在 Oracle 中编写表结构?【英文标题】:How do I write the table structure in Oracle from an existing schema? 【发布时间】:2019-12-05 16:48:10 【问题描述】:

到目前为止,我已经发现可以使用以下表格来描述表格:

select dbms_metadata.get_ddl('TABLE','<my table name>','<table owner>') from dual;

我还发现我可以使用以下语句从当前用户获取表格列表:

select table_name from user_tables;

但是我需要找到一种方法将这两者结合起来,以便得到一个(最好是 SQL 文件)输出,它基本上描述了当前架构中的所有表。我该怎么办?

【问题讨论】:

如果您想以编程方式进行 - 只需在循环中运行第一个查询。否则,获取任何 Oracle IDE(例如 Oracle SQL 开发人员)——它们都有某种模式导出实用程序。 【参考方案1】:

在您对user_tables的查询中致电dbms_metadata

select dbms_metadata.get_ddl('TABLE',table_name,user) 
from   user_tables;

【讨论】:

以上是关于如何根据现有模式在 Oracle 中编写表结构?的主要内容,如果未能解决你的问题,请参考以下文章