Oracle查看表结构的几种方法示例代码
1,DESCRIBE命令
使用方法如下:
SQL>describenchar_tst(nchar_tst为表名)
显示的结果如下:
名称是否为空?类型 ----------------------------------------------------------------------------- NAMENCHAR(6) ADDRNVARCHAR2(16) SALNUMBER(9,2)
2,DBMS_METADATA.GET_DDL包
使用方法如下:
SQL>SELECTDBMS_METADATA.GET_DDL('TABLE','NCHAR_TST')FROMDUAL;
如果显示的结果并未完整,如下:
CREATETABLE"SCOTT"."NCHAR_TST" ("NAME"NCHAR(6), "ADDR"NVARCHAR2(16
那么修改如下:
SQL>SETLONG9999 SQL>SELECTDBMS_METADATA.GET_DDL('TABLE','NCHAR_TST')FROMDUAL;
则显示如下的结果:
DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST') ------------------------------------------------------------------------------ CREATETABLE"SCOTT"."NCHAR_TST" ("NAME"NCHAR(6), "ADDR"NVARCHAR2(16), "SAL"NUMBER(9,2) )PCTFREE10PCTUSED40INITRANS1MAXTRANS255LOGGING STORAGE(INITIAL12288NEXT12288MINEXTENTS1MAXEXTENTS249PCTINCREASE50 FREELISTS1FREELISTGROUPS1BUFFER_POOLDEFAULT)TABLESPACE"SYSTEM"
3,方法:
通过Oracle中的user_tab_cols,user_col_comments,user_constraints,user_cons_columns表联合查询。
user_tab_cols用来获取对应用户表的列信息;
user_col_comments用来获取对应用户表列的注释信息;
user_constraints用来获取用户表的约束条件;
user_cons_columns约束中用户可访问列。
示例代码:
selectt.table_name,t.column_name,t.data_type,t.data_length,t.nullable,t.column_id,c.comments, (SELECTCASEWHENt.column_name=m.column_nameTHEN1ELSE0ENDFROMDUAL)iskey FROMuser_tab_colst,user_col_commentsc,(selectm.column_namefromuser_constraintss,user_cons_columnsm wherelower(m.table_name)='us_cities'andm.table_name=s.table_name andm.constraint_name=s.constraint_nameands.constraint_type='P')m WHERElower(t.table_name)='us_cities' andc.table_name=t.table_name andc.column_name=t.column_name andt.hidden_column='NO' orderbyt.column_id
总结
以上所述是小编给大家介绍的Oracle查看表结构的几种方法示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。