程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracle獲取表結構信息:表名、是否視圖、字段名、類型、長度、非空、主鍵,oracle視圖

Oracle獲取表結構信息:表名、是否視圖、字段名、類型、長度、非空、主鍵,oracle視圖

編輯:Oracle教程

Oracle獲取表結構信息:表名、是否視圖、字段名、類型、長度、非空、主鍵,oracle視圖


select
       a.TABLE_NAME as "TableName",
       case when (select count(*) from user_views v where v.VIEW_NAME =a.TABLE_NAME )>0 then 'V' else 'U'end as "TableType",
       a.COLUMN_NAME as "ColumnName",
       A.COLUMN_ID as "ColumnIndex",
       a.DATA_TYPE as "DataType",
       case  
         when a.DATA_TYPE = 'NUMBER' then
           case when a.Data_Precision is null then
             a.Data_Length
             else 
               a.Data_Precision
               end 
         else
          a.Data_Length
       end as "Length",
       case when a.nullable = 'N' then  '0' else '1' end as "IsNullable",
       b.comments as "Description", 
       case
          when (select count(*) from user_cons_columns c 
            where c.table_name=a.TABLE_NAME and c.column_name=a.COLUMN_NAME and c.constraint_name=
                (select d.constraint_name from user_constraints d where d.table_name=c.table_name and d.constraint_type   ='P')
                 )>0 then '1' else '0'end as "IsPK"
            
  from USER_TAB_COLS a,
       sys.user_col_comments b
 where a.table_name = b.table_name      
       and b.COLUMN_NAME = a.COLUMN_NAME       
       order by a.TABLE_NAME, a.COLUMN_ID

在oracle中查詢已知表名的表中所有字段名,每個字段是否是主鍵,是否是外鍵,是否為空的sql語句,

查詢表的所有列及其屬性:
select t.*,c.COMMENTS
from user_tab_columns t,user_col_comments c
where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = women;
查找表的主鍵:
select cu.*
from user_cons_columns cu, user_constraints au
where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = women;
查找表的外鍵(包括名稱,引用表的表名和對應的鍵名,下面是分成多步查詢):
select * from user_constraints c where c.constraint_type = 'R' and c.table_name = women
查詢外鍵約束的列名:
select * from user_cons_columns cl where cl.constraint_name = 外鍵名稱;
查詢引用表的鍵的列名:
select * from user_cons_columns cl where cl.constraint_name = 外鍵引用表的鍵名;
 

oracle中獲取指定表中各個列的基本信息

方法一:
在Oracle SQL Plus輸入以下命令
DESC 表名;
方法二:
用【PLSQL Developer】工具,右擊表名【編輯】選擇【列】
或【PLSQL Developer】命令窗口輸入:DESC 表名;
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved