ITPub博客

首页 > 数据库 > Oracle > 【oracle操作札记】oracle通过sql语句查看表的约束

【oracle操作札记】oracle通过sql语句查看表的约束

Oracle 作者:sx579999 时间:2014-03-13 12:37:47 0 删除 编辑

由于念经由过程sql语句来查看数据库表的相干束缚疑息,经由过程看了网上的一些资料,感觉有需要一下笔记。

Oracle将用户创建的表、束缚等疑息都放正在数据字典表中,承诺开拓人员查询数据字典表或视图来获与数据库东西的疑息,比圆一个表的创建者疑息、创建时候疑息、所属表空间疑息、用户拜候权限疑息等。假定用户正在对数据库中的数据进止操作时碰到艰易,就可以够拜候数据字典来查看数据库东西的详细疑息,数据字典中包露的首要内容以下所示。

各类圆案东西的定义疑息,如表、视图、索引、同义词、存储进程、函数、包、触发器和各类东西。

存储空间的分拨疑息,如为某个东西分拨了若干好多存储空间,该东西应用了若干好多存储空间。

平安疑息,如账户、权限、脚色、完整性束缚疑息。

数据库真例运转时的机能和统计疑息。

其他数据库运转进程当中的基本疑息。

注意:数字字典表本身没有能被直接拜候,必须经由过程数据字典视图来拜候数据字典中的疑息,系统的数据字典视图以V$开尾。

数据字典表凭据其前缀又可分为以下4类。

user:用户所创建东西对应的数据字典表,比方user_objects、user_tables等。

all:用户所能拜候东西(包括用户创建的东西)对应的数据字典表,比方all_objects、all_tables等。

dba:统统东西对应的数据字典表,比方all_objects、all_tables等。

v$:描写系统机能相干的数据字典表。如经由过程v$version表可得到数据库版本疑息。

有两个数据字典视图供给了束缚的详细疑息。

user_constraints:对表中的每个束缚,正在该表中都有一笔记载描写谁人束缚,该表包露束缚应用到的表,假定知讲束缚名,念知讲束缚典范,可以或许查询user_constraints,谁人视图描写了束缚的定义,可是它没有供给束缚定义正在哪些字段称号上。

user_cons_columns:视图中隐示束缚的字段称号。假定主键是一个结合(多字段)主键,谁人视图中将有谁人束缚的两笔记载,结合主键的每个字段对应一笔记载,每笔记载经由过程position(正在结合主键中的位置)来区别。

比方要查询invoice_check_others表中的统统束缚疑息,可以或许应用以下的SQL语句:

SELECT constraint_name, search_condition, status 
  FROM user_constraints 
 WHERE table_name = UPPER ("cityandcode");

wKioL1MbBDnAcZpUAAC7qtjqvFQ221.jpg

可见正在user_constraints 表上有很多的数据库原疑息

上面可以或许查看user_constraints 表中详细有哪些疑息

select * from user_constraints

wKioL1MbBTHA552mAAjPP7mkzHw902.jpg

正在user_constraints视图中并出有包露束缚应用到的列疑息,为了获与invoice_check_单位others表的列束缚疑息,可以或许应用以下的代码查询user_cons_columns视图,如以下代码所示。

--查询束缚应用的列疑息  
SELECT constraint_name, column_name 
  FROM user_cons_columns 
 WHERE table_name = UPPER ("cityandcode");

wKiom1MbBi7yNMNWAABsh5R2PFk580.jpg


其他的作为DBA,可以或许应用all_constraints和all_cons_columns来获与束缚的详细疑息。

先到那里



本文出自 “菜鸟也念飞” 博客,请务必保存此出处http://yangyingbin.blog.51cto.com/6660933/1370830


PS:朋友弄了个查询七位数开奖结果的网站地址是 www.sscijia.com玩江苏体彩的同学可以去看下子。。。。。
<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9641383/viewspace-1115227/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论