oracle獲取表的列名,主鍵

2021-08-26 09:14:51 字數 1047 閱讀 8205

select * from user_tab_columns where table_name='表名

(字母大寫)'

查詢某個表中的欄位名稱、型別、精度、長度、是否為空

select column_name,data_type,data_precision,data_scale,nullable

from user_tab_columns

where table_name ='yourtablename'

查詢某個表中的主鍵欄位名

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 = 'yourtablename'

查詢某個表中的外來鍵欄位名稱、所引用表名、所應用欄位名

select distinct(col.column_name),r.table_name,r.column_name

from

user_constraints con,

user_cons_columns col,

(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='yourtablename'

) r

where con.constraint_name=col.constraint_name

and con.r_constraint_name=r.r_constraint_name

and con.table_name='yourtablename'

檢視Mysql表名 主鍵 列名

mysql有幾個內部表,存放schema,表名,主鍵,索引,列名等資訊。此次做數倉遷移,為了配置datax通用指令碼,用到這些,順手整理一下 select t.table schema,t.table name,concat vnm db01 t.table name targettable,k.c...

Oracle獲取表的所有列名

想用insert into將乙個表的資料匯入另乙個表,但兩個表的列並不一樣,後乙個錶比前者少幾個,相同部分的名稱是一樣的,所以想直接獲得目標表的所有列名,然後再從源表中匯出這些列的資料insert。要獲得乙個表的所有列名,oracle有幾個sys下的檢視可以做到 all tab comments u...

SQL搜尋某個表的主鍵所在的列名

日常工作記錄,北京 建設公司在實際專案中遇到並覺得的例項 在sql server中使用sql語句搜尋某個表的主鍵所在的列名,語法如下 select syscolumns.name from syscolumns,sysobjects,sysindexes,sysindexkeys where sys...