oracle怎么看约束名,oracle如何查看约束

oracle 查看约束

查看表的约束条件有三个视图:

成都创新互联公司主营缙云网站建设的网络公司,主营网站建设方案,成都App制作,缙云h5小程序制作搭建,缙云网站营销推广欢迎缙云等地区企业咨询

1、dba_constraints、all_constraints、user_constraints。

2、其中:dba_constraints视图需要DBA权限才能查询。

3、all_constraints、user_constraints普通用户查询。

扩展资料:

Oracle数据库使用约束(constraints)来防止无效的数据进入表中,保护数据的实体完整行约束定义在表级,如果表与表之间有从属关系,约束可以防止表的删除,通过约束字段,强制用户在插入更新和删除数据时必须遵循一定的规则。

约束定义语法: create table 表名(字段名 数据类型 约束类型) 或 create table 表名(字段名1 数据类型,字段名2,数据类型 constraints 约束别名 约束类型 (字段))

oracle 如何查看约束的名字约束的类型和约束所对应的列名

SELECT A.CONSTRAINT_NAME,A.TABLE_NAME,A.COLUMN_NAME,B.CONSTRAINT_TYPE

FROM USER_CONS_COLUMNS A, USER_CONSTRAINTS B

WHERE A.CONSTRAINT_NAME = B.CONSTRAINT_NAME

AND A.OWNER='数据库用户'

CONSTRAINT_NAME:约束名称

TABLE_NAME:表名

COLUMN_NAME:列名

CONSTRAINT_TYPE;约束类型 P:Primary Key  U:Unique Key

oracle怎么查看表中的约束?

查询外键约束的列名: 

select * from user_cons_columns cl where cl.constraint_name = 外键名称

select table_name,constraint_name,constraint_type from user_constraints

where table_name='大写的表名'

select table_name,constraint_name,constraint_type from dba_constraints

where table_name='大写的表名'

---------另外以下可以只查看表中的索引

select * from USER_INDEXES where table_name = '大写的表名'

select * from ALL_INDEXes where table_name = '大写的表名'

我们可以使用下面语句从all_constraints视图中查看某表上的约束:

SELECT constraint_name, table_name, r_owner, r_constraint_name

FROM all_constraints

WHERE table_name = 'table_name' and owner = 'owner_name';

另一个视图ALL_CONS_COLUMNS也包括组成表上约束列的信息。

Oracle查看表索引、主键、外键、约束

查看表索引、主键、外键、约束

(包括索引名,类型,构成列)

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 = 'ORG_DLF' ----指定表

AND T.TABLE_OWNER= 'ODSRPT_SIT2'; ----指定用户

(包括名称,构成列)

SELECT CU.*

FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU

WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME

AND AU.CONSTRAINT_TYPE = 'P'

AND AU.TABLE_NAME = 'LOAN_APPLICATION_FEE' -----指定表名

AND CU.OWNER='ODSRPT_SIT2'; -----指定用户名

(包括表名称,构成列)

SELECT CU.COLUMN_NAME,AU.TABLE_NAME

FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU

WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME

AND AU.CONSTRAINT_TYPE = 'U'

AND AU.OWNER='RPT_UAT2' -----指定用户名

AND AU.TABLE_NAME = 表名 ; -----指定表名

Select a.Owner 外键拥有者,

a.Table_Name 外键表,

c.Column_Name 外键列,

b.Owner 主键拥有者,

b.Table_Name 主键表,

d.Column_Name 主键列,

c.Constraint_Name 外键名,

d.Constraint_Name 主键名

From User_Constraints a,

 user_Constraints b,

user_Cons_Columns c, --外键表

user_Cons_Columns d --主键表

Where a.r_Constraint_Name = b.Constraint_Name

And a.Constraint_Type = 'R'

And b.Constraint_Type = 'P'

And a.r_Owner = b.Owner

And a.Constraint_Name = c.Constraint_Name

And b.Constraint_Name = d.Constraint_Name

And a.Owner = c.Owner

And a.Table_Name = c.Table_Name

And b.Owner = d.Owner

And b.Table_Name = d.Table_Name;


当前标题:oracle怎么看约束名,oracle如何查看约束
本文URL:http://csdahua.cn/article/dssogei.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流