oracle 查詢表的基本資訊

2021-08-25 13:50:36 字數 3008 閱讀 9695

[color=red]查詢某字首的所有表;[/color]

select * from tab where upper(tname) like 'rp%'

因為oracle專案某些模組的資料結構設計沒有嚴格按照某規範設計,所以只能從資料庫中查詢資料結構,需要查詢的資訊如下:欄位名稱、資料型別、是否為空、預設值、主鍵、外來鍵等等。

在網上搜尋了查詢上述資訊的方法,總結如下:

查詢表是否存在:

select count(*) from all_tables where owner='username' and table_name='tablename'

序列是否存在:

select count(*) from all_sequences where sequence_name='reportlog';

dblink是否存在

select * from dba_objects where object_type='database link'

一,查詢表基本資訊

select

utc.column_name,utc.data_type,utc.data_length,utc.data_precision, utc.data_scale,utc.nullable,utc.data_default,ucc.comments

from

user_tab_columns utc,user_col_comments ucc

where

utc.table_name = ucc.table_name and utc.column_name = ucc.column_name and utc.table_name = 'onlinexls'

order by column_id

注意:order by column_id的意義是使得結果按照設計資料結構時的順序顯示。

二,查詢表主鍵

select col.column_name from

user_constraints con,user_cons_columns col

where

con.constraint_name=col.constraint_name and con.constraint_type='p' and col.table_name='onlinexls'

三,查詢表外來鍵

select distinct(ucc.column_name) column_name,rela.table_name,rela.column_name column_name1

from

user_constraints uc,user_cons_columns ucc, (select t2.table_name,t2.column_name,t1.r_constraint_name from user_constraints t1,user_cons_columns t2 where t1.r_constraint_name=t2.constraint_name and t1.table_name='onlinexls') rela

where

uc.constraint_name=ucc.constraint_name and uc.r_constraint_name=rela.r_constraint_name and uc.table_name='onlinexls'

1、查詢表的所有索引(包括索引名,型別,構成列):

select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查詢的表

2、查詢表的主鍵(包括名稱,構成列)表名大寫 :

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 = '要查詢的表' ;

僅查詢表主鍵

select column_name from user_cons_columns where constraint_name in (select constraint_name from user_constraints where table_name =upper('表名') and constraint_type='p');

3、查詢表的唯一性約束(包括名稱,構成列):

select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'u' and au.table_name = 要查詢的表

4、查詢表的外來鍵(包括名稱,引用表的表名和對應的鍵名,下面是分成多步查詢):

select * from user_constraints c where c.constraint_type = 'r' and c.table_name = 要查詢的表

查詢外來鍵約束的列名:

select * from user_cons_columns cl where cl.constraint_name = 外來鍵名稱

查詢引用表的鍵的列名:

select * from user_cons_columns cl where cl.constraint_name = 外來鍵引用表的鍵名

5、查詢表的所有列及其屬性

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 = 要查詢的

Oracle入門(四)之查詢基本資訊

1 查詢例項服務 sql show parameter instance name 2 查詢資料庫名字 sql show parameter db name 3 查詢資料庫名字 sql select name from v database 4 顯示sga引數大小 sql show sga 5 查詢...

oracle查詢表基本資訊(索引,外來鍵,列等)

oracle中查詢表的資訊,包括表名,欄位名,字段型別,主鍵,外來鍵唯一性約束資訊,索引資訊查詢sql如下,希望對大家有所幫助 1 查詢出所有的使用者表 select from user tables 可以查詢出所有的使用者表 select owner,table name from all tab...

ORACLE資料庫查詢表的基本資訊,主鍵,外來鍵等

因為專案某些模組的資料結構設計沒有嚴格按照某規範設計,所以只能從資料庫中查詢資料結構,需要查詢的資訊如下 欄位名稱 資料型別 是否為空 預設值 主鍵 外來鍵等等。在網上搜尋了查詢上述資訊的方法,總結如下 一,查詢表基本資訊 select utc.column name,utc.data type,u...