欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle用SQL语句实现desc函数功能

程序员文章站 2024-02-12 15:59:46
...

Oracle用SQL语句实现desc函数功能: SELECT A.COLUMN_NAME 字段名, DATA_TYPE ||DECODE(DATA_TYPE,

Oracle用SQL语句实现desc函数功能

[日期:2012-05-18] 来源:Linux社区 作者:Linux [字体:]

Oracle用SQL语句实现desc函数功能:

SELECT A.COLUMN_NAME 字段名,
DATA_TYPE ||DECODE(DATA_TYPE,'DATE','','CLOB','','BLOB','','BFILE','','FLOAT','','LONG RAW','','LONG','','RAW','(' || TO_CHAR(DATA_LENGTH) || ')',
(DECODE(SIGN(INSTR(DATA_TYPE, 'CHAR')),1,
'(' || TO_CHAR(DATA_LENGTH) || ')',(DECODE(SUBSTR(DATA_TYPE, 1, 9),
'TIMESTAMP', '',
(DECODE(NVL(DATA_PRECISION, -1), -1,
'',(DECODE(NVL(DATA_SCALE, 0), 0,
'(' || TO_CHAR(DATA_PRECISION) || ')', '(' || TO_CHAR(DATA_PRECISION) || ',' ||
TO_CHAR(DATA_SCALE) || ')'))))))))) 字段类型,
A.NULLABLE 允许为空,
A.DATA_DEFAULT 默认值,
B.COMMENTS 字段注释
FROM ALL_TAB_COLUMNS A,
ALL_COL_COMMENTS B
WHERE B.TABLE_NAME=A.TABLE_NAME
AND A.OWNER=B.OWNER
AND A.COLUMN_NAME=B.COLUMN_NAME
AND A.TABLE_NAME =UPPER( 'TABLE_NAME')
AND A.OWNER =UPPER( 'USER')
ORDER BY COLUMN_ID;

更多Oracle相关信息见Oracle 专题页面 ?tid=12

Oracle用SQL语句实现desc函数功能