天天看点

达梦数据库快速获取某张表的DDL

如何快速查询某张表的DDL?

DM7提供了两种方法。

方法一:SP_TABLEDEF

定义:

SP_TABLEDEF (

schname varchar(128),

tablename varchar(128) )

功能说明: 获得表的定义

参数说明: schname:模式名  tablename:表名

但是它存在一个缺点,只能查询表,不能查询其他类型的对象。

所以我这里推荐的第二种方法,也是我最常用的命令

方法二:dbms_metadata.get_ddl

DBMS_METADATA.GET_DDL (

object_type     IN VARCHAR2,

name            IN VARCHAR2,

schema          IN VARCHAR2 DEFAULT NULL,

version         IN VARCHAR2 DEFAULT 'COMPATIBLE',

model           IN VARCHAR2 DEFAULT 'ORACLE',

transform       IN VARCHAR2 DEFAULT 'DDL')

RETURN CLOB;

用法:select dbms_metadata.get_ddl('TABLE','TEST','USER1') from dual;

它除了可以查询表,还能查询到其他各种对象的DDL,你只需要知道对象类型、对象名称、对象用户即可。