【问题标题】:generate create table from existing table从现有表生成创建表
【发布时间】:2014-06-20 19:10:30
【问题描述】:

我在 oracle 数据库中有一些大表(很多列和数据类型),我需要将它们移动到另一个 oracle 数据库(比如从我的 DEV 区域到 UAT 区域)。无论如何我可以让sql developer或sql plus输出一个与现有表结构完全相同的create table语句吗?

谢谢

【问题讨论】:

    标签: sql oracle


    【解决方案1】:

    如果你想通过 SQL 语句得到它,那么你可以试试下面的查询

    SELECT dbms_metadata.get_ddl('TABLE', 'Your_Table_Name') FROM dual; 
    

    更多信息请参见DBMS_METADATA

    您也可以使用 Toad 软件生成脚本(如果您安装了 Toad)

    【讨论】:

      【解决方案2】:

      如果您使用的是 SQL Developer,您可以右键单击要为其生成脚本的表。

      从那里选择 Quick DDL,然后单击保存到文件。然后,这将生成创建表脚本到外部 sql 文件。您也可以通过一次选择多个表来对多个表执行此操作。

      希望这会有所帮助!

      【讨论】:

        【解决方案3】:

        另一种选择是在两个模式之间创建一个数据库链接,然后做一个

        create table table_name AS SELECT * from table_name@original_server
        

        【讨论】:

          猜你喜欢
          • 2016-02-22
          • 2023-03-09
          • 2021-10-03
          • 2012-07-29
          • 2019-10-10
          • 2022-01-11
          • 2011-01-31
          相关资源
          最近更新 更多