Oracle查看表結(jié)構(gòu)的幾種方法示例代碼
1,DESCRIBE 命令
使用方法如下:
SQL> describe nchar_tst(nchar_tst為表名)
顯示的結(jié)果如下:
名稱 是否為空? 類型 ----------------------------------------- -------- ---------------------------- NAME NCHAR(6) ADDR NVARCHAR2(16) SAL NUMBER(9,2)
2,DBMS_METADATA.GET_DDL包
使用方法如下:
SQL> SELECT DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST') FROM DUAL;
如果顯示的結(jié)果并未完整,如下:
CREATE TABLE "SCOTT"."NCHAR_TST"
( "NAME" NCHAR(6),
"ADDR" NVARCHAR2(16
那么修改如下:
SQL> SET LONG 9999
SQL> SELECT DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST') FROM DUAL;
則顯示如下的結(jié)果:
DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST')
------------------------------------------------------------------------------
CREATE TABLE "SCOTT"."NCHAR_TST"
( "NAME" NCHAR(6),
"ADDR" NVARCHAR2(16),
"SAL" NUMBER(9,2)
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 LOGGING
STORAGE(INITIAL 12288 NEXT 12288 MINEXTENTS 1 MAXEXTENTS 249 PCTINCREASE 50
FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "SYSTEM"
3,方法:
通過Oracle中的user_tab_cols, user_col_comments, user_constraints, user_cons_columns表聯(lián)合查詢。
user_tab_cols用來獲取對應(yīng)用戶表的列信息;
user_col_comments用來獲取對應(yīng)用戶表列的注釋信息;
user_constraints用來獲取用戶表的約束條件;
user_cons_columns約束中用戶可訪問列。
示例代碼:
select t.table_name,t.column_name,t.data_type,t.data_length,t.nullable,t.column_id,c.comments,
(SELECT CASE WHEN t.column_name=m.column_name THEN 1 ELSE 0 END FROM DUAL) iskey
FROM user_tab_cols t, user_col_comments c, (select m.column_name from user_constraints s, user_cons_columns m
where lower(m.table_name)='us_cities' and m.table_name=s.table_name
and m.constraint_name=s.constraint_name and s.constraint_type='P') m
WHERE lower(t.table_name)='us_cities'
and c.table_name=t.table_name
and c.column_name=t.column_name
and t.hidden_column='NO'
order by t.column_id
總結(jié)
以上所述是小編給大家介紹的Oracle查看表結(jié)構(gòu)的幾種方法示例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Oracle數(shù)據(jù)庫表空間滿了的問題處理方法
在Oracle數(shù)據(jù)庫管理中,表空間是一個重要的概念,用于存儲數(shù)據(jù)庫對象和數(shù)據(jù),當(dāng)表空間滿了時,可能會導(dǎo)致數(shù)據(jù)庫的運行受到影響,本文將介紹如何診斷和處理 Oracle 數(shù)據(jù)庫中表空間滿的問題,并給出相應(yīng)的 SQL 命令,需要的朋友可以參考下2024-03-03
oracle 層次化查詢(行政區(qū)劃三級級聯(lián))
現(xiàn)在將上面的行政區(qū)劃按代碼分為三個級別:?。ê笏奈粸?)/市(后兩位為0)/縣,同時分別標出他們的級別,這樣的話,便于后期根據(jù)不同的級別查詢。2009-07-07
Oracle的CLOB大數(shù)據(jù)字段類型操作方法
VARCHAR2既分PL/SQL Data Types中的變量類型,也分Oracle Database中的字段類型,不同場景的最大長度不同。接下來通過本文給大家分享Oracle的CLOB大數(shù)據(jù)字段類型操作方法,感興趣的朋友一起看看吧2017-08-08
oracle impdp network_link參數(shù)使用介紹
本文將介紹oracle impdp network_link參數(shù)使用方法,需要了解更多的朋友可以參考下2012-11-11
Oracle中行列轉(zhuǎn)換的實現(xiàn)方法匯總
行列轉(zhuǎn)換是指將行數(shù)據(jù)轉(zhuǎn)換為列數(shù)據(jù),或?qū)⒘袛?shù)據(jù)轉(zhuǎn)換為行數(shù)據(jù)的過程,本文主要介紹了Oracle中行列轉(zhuǎn)換的實現(xiàn)方法匯總,用PIVOT和UNPIVOT函數(shù)來實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2024-02-02

