【问题标题】:How I can get ddl of all objects like table,triggers,procedures etc in SQL SERVER 2008我如何在 SQL SERVER 2008 中获取所有对象(如表、触发器、过程等)的 ddl
【发布时间】:2015-12-04 11:39:53
【问题描述】:

我创建了示例程序,其中我使用 get_ddl 方法获取了所有对象(如表、触发器等)的 ddl:-

SELECT DBMS_METADATA.GET_DDL('TABLE', TABLE_NAME) FROM USER_TABLES;
SELECT DBMS_METADATA.GET_DDL('TRIGGER', TRIGGER_NAME) FROM USER_TRIGGERS;
SELECT DBMS_METADATA.GET_DDL('VIEW', VIEW_NAME) FROM USER_VIEWS;
SELECT DBMS_METADATA.GET_DDL('FUNCTION', OBJECT_NAME) FROM USER_PROCEDURES WHERE OBJECT_TYPE = 'FUNCTION';
SELECT DBMS_METADATA.GET_DDL('PROCEDURE', OBJECT_NAME) FROM USER_PROCEDURES WHERE OBJECT_TYPE = 'PROCEDURE';
SELECT DBMS_METADATA.GET_DDL('INDEX', INDEX_NAME) FROM USER_INDEXES ;

现在我正在尝试为 sql server 创建相同的示例以获取所有对象的 ddl,所以我想知道 sql server 2008 是否支持 get_ddl 方法或者是否有任何其他工具可以创建所有对象的 ddl。请帮助如何做到这一点。

【问题讨论】:

    标签: sql-server ddl


    【解决方案1】:

    对于源对象 -

    SELECT OBJECT_SCHEMA_NAME([object_id]), OBJECT_NAME([object_id]), [definition]
    FROM sys.sql_modules
    

    用于表、索引等 -

    http://www.c-sharpcorner.com/uploadfile/67b45a/how-to-generate-a-create-table-script-for-an-existing-table/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-06
      • 2017-03-18
      • 2018-07-05
      相关资源
      最近更新 更多