user_tab_columns用户表字段信息,包括table_name,column_name,datatype,datalength,datascale等。
user_tab_comments用户表描述,包括table_name,tabletype(table,view...),comments。
user_col_comments用户表字段描述,包括table_name,column_name,comments。 user_tab_cols用户表和字段的关系表。
user_constraints用户表约束表,包括table_name,constraint_name,index等
User_Cons_Columns用户表字段和约束关联表,包括table_name,constraint_name,column_name等。
all_indexes索引表,包括index_name,unique等。
all_ind_columns索引和字段关联表
col字段表,包括column_name,isnullable,table_name等。
user_objects用户对象表,包括object_type(view,table,index),object_name等。
(1)查询唯一
select * from all_indexes g inner join all_ind_columns a on g.INDEX_NAME = a.INDEX_NAME and g.UNIQUENESS = ''UNIQUE'' where a.TABLE_NAME = 'TB'
(2)查询主键
select * from user_cons_columns e inner join user_constraints f on e.TABLE_NAME = f.TABLE_NAME and f.CONSTRAINT_TYPE = ''P'' where e.TABLE_NAME='TB'
(3)查询约束
select * from user_cons_columns a, user_constraints b
where a.constraint_name = b.constraint_name and a.table_name = upper('tb')
(4)查询表结构
select a.table_name TableName,a.COLUMN_NAME FieldName, case when exists(select h.COLUMN_NAME from all_indexes g inner join all_ind_columns h on g.INDEX_NAME = h.INDEX_NAME and g.UNIQUENESS = 'UNIQUE' where a.COLUMN_NAME = h.COLUMN_NAME and h.TABLE_NAME = a.TABLE_NAME ) then '1' else '0' end FieldIsIdentity, case when exists(select e.COLUMN_NAME from user_cons_columns e inner join user_constraints f on e.TABLE_NAME = f.TABLE_NAME and f.CONSTRAINT_TYPE = 'P' where e.TABLE_NAME=a.TABLE_NAME and a.COLUMN_NAME = e.COLUMN_NAME) then '1' else '0' end FieldIsPrimary, a.DATA_TYPE FieldType, a.DATA_LENGTH FieldLength, a.DATA_PRECISION FieldPrecision, a.DATA_SCALE FieldScale from user_tab_columns a, user_constraints b, user_cons_columns c,user_tab_comments d where b.CONSTRAINT_NAME = c.CONSTRAINT_NAME and d.TABLE_NAME = a.TABLE_NAME and a.table_name = upper('tb') ;