按约束名称获取表名

ser*_*nni 102 oracle constraints

Oracle约束名称是已知的.

如何查找应用此约束的表的名称?

Jus*_*ave 182

SELECT owner, table_name
  FROM dba_constraints
 WHERE constraint_name = <<your constraint name>>
Run Code Online (Sandbox Code Playgroud)

会给你表的名称.如果您无权访问该DBA_CONSTRAINTS视图,ALL_CONSTRAINTS或者也USER_CONSTRAINTS应该工作.

  • @JitendraPancholi - `从user_constraints中选择table_name,其中constraint_name ='xxx';`应该适用于任何用户.您确定查询中没有拼写错误吗?`select owner,object_name from all_objects object_name ='USER_CONSTRAINTS'`为您返回什么? (8认同)

小智 14

ALL_CONSTRAINTS 描述了当前用户可访问的表的约束定义.

DBA_CONSTRAINTS 描述数据库中的所有约束定义.

USER_CONSTRAINTS 描述了当前用户架构中表的约束定义

Select CONSTRAINT_NAME,CONSTRAINT_TYPE ,TABLE_NAME ,STATUS from 
USER_CONSTRAINTS;
Run Code Online (Sandbox Code Playgroud)