注册
【DM8】查看表全部定义sql
技术分享/ 文章详情 /

【DM8】查看表全部定义sql

海音 2023/04/03 2469 2 6

一、使用客户端--右击创建sql
客户端导航栏找到该表,右击--生成SQL脚本--Create To--新sql编辑器
image.png

二、当使用disql命令行方式时
1.如果仅需查看表列结构,可使用命令 desc 模式名.表名
image.png
2.如果需要查看有关该表的所有对象的创建sql,包括外键及索引,可创建以下存储过程实现
CREATE OR REPLACE
PROCEDURE SP_SHOW_TABLE_DEFINE
(
SCH_NAME VARCHAR2
(
500),
TAB_NAME VARCHAR2
(
1000) )
as
V_INX_ID VARCHAR2(8000);
V_SQL VARCHAR2(8000);
V_SQL_ALL VARCHAR2(8000);
v_sql1 varchar2(8000);
V_CUR
CURSOR;
BEGIN
v_sql1 = TABLEDEF(SCH_NAME,TAB_NAME);
OPEN V_CUR FOR SELECT T2.OBJECT_ID FROM ALL_INDEXES T1, ALL_OBJECTS T2 WHERE T1.OWNER =T2.OWNER AND T1.INDEX_NAME=T2.OBJECT_NAME AND T2.GENERATED ='N' AND T1.OWNER =SCH_NAME AND T1.TABLE_NAME=TAB_NAME;
LOOP
FETCH V_CUR INTO V_INX_ID;
EXIT
WHEN V_CUR%NOTFOUND;
--PRINT V_INX_ID;
--DBMS_OUTPUT.PUT_LINE(V_INX_ID);
SELECT INDEXDEF(V_INX_ID,1) INTO V_SQL FROM DUAL;
V_SQL_ALL=V_SQL_ALL||'
'||V_SQL;
END LOOP;
V_SQL_ALL=v_sql1||'
'||V_SQL_ALL;
print V_SQL_ALL;
END;
/

3.执行
SELECT SF_SHOW_TABLE_DEFINE('SYSDBA','TEST');
来查询
image.png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服