oracle 查看主外键约束
select a.constraint_name, a.table_name, b.constraint_name
from user_constraints a, user_constraints b
where a.constraint_type = 'R' and b.constraint_type = 'P' and a.r_constraint_name = b.constraint_name
-- P 代表主键, R 代表外键
查询某一张表的约束:
select constraint_name from dba_cons_columns where table_name='表名';
这时可以对某一些约束执行某一些操作,如禁用(disable)、删除(drop)或启用(enable)
Oracle 查看一个表对应的主键和外键的约束关系,查看的语句:
select a.owner 主键拥有者
,a.table_name 主键表
,b.column_name 主键列
,c.owner 外键拥有者
,c.table_name 外键表
,d.column_name 外键列
from user_constraints a
left join user_cons_columns b
on a.constraint_name=b.constraint_name
left join user_constraints C
on c.constraint_name=a.constraint_name
left join user_cons_columns d
on c.constraint_name=d.constraint_name
and a.constraint_type='P'
and a.table_name='表名' --需要查看主外键关系的表
order by a.table_name
另外一种写法:
select a.owner 外键拥有者, a.table_name 外键表, substr(c.column_name,1,127) 外键列, b.owner 主键拥有者,
b.table_name 主键表, substr(d.column_name,1,127) 主键列
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
user_constraints是表约束的视图,描述的是约束类型(constraint_type)是什么,属于哪些表(table_name),如果约束的类型为R(外键)的
话,那么r_constraint_name字段存放的就是被引用主表中的主键约束名。
查看表结构: desc user_constraints;
user_cons_columns是表约束字段的视图,说明表中的和约束相关的列参与了哪些约束。这些约束有主键约束,外键约束,索引约束.
两者可以通过(owner,constraint_name,table_name)关联
查看表结构: desc user_cons_columns;
oracle 查看主外键约束的更多相关文章
- Oracle开发 之 主-外键约束FK及约束的修改
试验环境: 1)数据库版本:oracle 11.2.0.4 2)建表脚本:以scott的dept及emp表为基础. 父表:dept -- Create table create table DEPT ...
- 批量删除MSSQL 中主外键约束
转自: http://www.maomao365.com/?p=813 在制作 MSSQL同步工具的时候,发现由于主外键的约束,导致数据同步异常,所有我们需要把 读数据库里面的主外键约束,进行批量删除 ...
- C# 如何物理删除有主外键约束的记录?存储过程实现
十年河东,十年河西,莫欺少年穷 本篇主旨是如何物理删除有主外键约束的记录!那么,我们从主外键走起! 下面新建三张有主外键约束的表,分别为:系/学院表,专业班表,学生表,如下: CREATE TABLE ...
- MySQL 主外键约束与标准SQL不同的地方
[标准SQL的外键约束条件] 1): 子表引用父表的主键 drop table if exists child,parent; create table if not exists parent( i ...
- 通过sql命令建表 和 主外键约束以及其他约束
create table命令 create table dept ( dept_id int primary key, dept_name ) not null, dept_address ) ) c ...
- SQL server 添加主外键约束
---添加主键约束 alter table 表名 add constraint 约束名 primary key (主键) - --添加唯一约束 alter table 表名 ...
- sql 数据库查看主外键关联
SELECT 主键列ID=b.rkey ,主键列名=(SELECT name FROM syscolumns WHERE colid=b.rkey AND id=b.rkeyid) ,外键表ID=b. ...
- Oracle:对表的CREATE、ALTER、INSERT、RENAME、DELETE操作练习以及主外键约束
-创建一个student表,设定表的主键为学号CREATE TABLE student( sno VARCHAR2(10) PRIMARY KEY, --列级约束 sno VARCHAR2(20) C ...
- 表有主外键约束时的delete 方法 2008
--1.禁用约束 ALTER TABLE abppmgr.MST_ITEMMASTER disable CONSTRAINT C0248833319_7676; --2.删除数据 truncate t ...
随机推荐
- 搭建nginx代理,为前端页面跨域调用接口
前端同学因开发需要,本地搭建的服务需要调用其它域名的接口,在帮助正确配置后,已能正常使用. 这里写一篇博客,记录一下. 前端页面地址为127.0.0.1:9813/a.html 接口地址http:// ...
- Gin实战:Gin+Mysql简单的Restful风格的API
我们已经了解了Golang的Gin框架.对于Webservice服务,restful风格几乎一统天下.Gin也天然的支持restful.下面就使用gin写一个简单的服务,麻雀虽小,五脏俱全.我们先以一 ...
- webstorm 连接svn
先下个Slik-Subversion,安装好,在webstorm中setting中搜索Subversion,把上边安装的地址加上\svn.exe配置在Use command line client,然 ...
- 【转载】 历届Turing奖得主名单
Turing奖最早设立于1966年,是美国计算机协会在计算机技术方面所授予的最高奖项,被喻为计算机界的诺贝尔奖.它是以英国数学天才Alan Turing先生的名字命名的,Alan Turing先生对早 ...
- Spring MVC 实现Excel的导入导出功能(1:Excel的导入)
简介 这篇文章主要记录自己学习上传和导出Excel时的一些心得,企业办公系统的开发中,经常会收到这样的需求:批量录入数据.数据报表使用 Excel 打开,或者职能部门同事要打印 Excel 文件,而他 ...
- Java中多个集合的交集,并集和差集
一.交集 java中交集使用 A.retainAll(B) ,交集的结果在集合A中. import org.junit.Test; import java.util.HashSet; import j ...
- 鸟哥linux私房菜学习笔记 第二章知识点
2.1 linux一切皆文件 2.2 磁盘分区 磁盘即文件 2.2.1 磁盘连接的方式与设备文件名的关系 模糊 1.正常的实体机器大概使用的都是 /dev/sd[a-] 的磁盘文件名,至于虚拟机环境下 ...
- 基于 java 【Web安全】文件上传漏洞及目录遍历攻击
前言:web安全之文件上传漏洞,顺带讲一下目录遍历攻击.本文基于 java 写了一个示例. 原理 在上网的过程中,我们经常会将一些如图片.压缩包之类的文件上传到远端服务器进行保存.文件上传攻击指的是恶 ...
- ajax+json+ashx实现一个页面多个tab的分页
1:项目功能需求:我的荣誉.审核中的荣誉.审核通过的荣誉在一个页面分别作列表展示.每个tab都需要分页,对实现的功能做个简单总结. 2:前台页面:引用的DBPage.js和pageCss.css实现分 ...
- 设计模式 UML & java code
A: 创造性模式 1. 工厂方法模式(FactoryMethod) 1.1 类图 1.2 代码1 public interface Pet { public String petSound(); } ...