【Oracle删除表时候有外键 不能删除】教程文章相关的互联网学习教程文章

Oracle数据库,非空约束、主键约束、外键约束、唯一约束【图】

非空约束:设置列时,可为空默认可为空,去掉对号之后设置数据不可为空; 唯一约束:在键中设置,唯一约束名称、类型Unique、列名;设置应用完成之后,此列数据具有唯一性;即数据不可重复 主键约束:主键列自动具有非空约束和唯一约束,一个表只能有一个主键约束(自动生成索引,提高查询效率) 原文:http://www.cnblogs.com/zhaotiancheng/p/6159488.html

Oracle外键级联删除和级联更新【图】

1 级联删除Oracle在外键的删除上有NO ACTION(类似RESTRICT)、CASCADE和SET NULL三种行为。下面以学生-班级为例说明不同情况下的外键删除,学生属于班级,班级的主键是学生的外键。-- 班级表 CRATE TABLE TB_CLASS (ID NUMBER NOT NULL, --班级主键NAME VARCHAR2(50), --班级名称CONSTRAINT PK_TB_CLASS PRIMARY KEY (ID) );-- 学生表 CREATE TABLE TB_STUDENT (ID NUMBER NOT NULL, --学生主键NAME VARCHAR2(50)...

Oracle存储过程update受外键约束的主键值时完整性冲突解决方案【代码】

1.问题背景虽然在数据库操作中我们并不提倡修改主键,但是确实在实际生活中有这样的业务需求:表A有主键KA,表B中声明了一个references A(KA)的外键约束,我们需要修改A中某条目KA的值并且更新B中外键约束。 但是DBMS在执行了第一条update后检查完整性会发现冲突:B中条目的外键不存在。注:我在Oracle database环境下遇到这个问题的,Oracle很蛋疼的不能设置外键为update级连,所以只有人工处理。2.举例说明用一个简单的例子说明,...

Oracle中主键、外键、索引、序列、唯一性约束的创建

1、主键的创建方法一:直接在sql语句中声明字段主键约束create table table_name (id type[length] constraint pk_name primary key,name tyoe[length],age type[length],class_id);方法二:alter更改表添加约束alter table table_name add constraint pk_name primary key (字段);删除:alter table table_name drop constraint contraint_name;重命名:alter table table_name rename constraint old_name to new_name;失效:alt...

oracle中查询、禁用、启用、删除表外键

1.查询所有表的外键的:select table_name, constraint_name from user_constraints where constraint_type = ‘R‘; 2.禁用所有外键约束, 使用下面的sql生成对应sql脚本:select ‘alter table ‘ || table_name || ‘ disable constraint ‘ || constraint_name || ‘;‘ from user_constraints where constraint_type = ‘R‘;生成的sql类似下面的语句:alter table BERTH disable constraint BERTH_FK;alter table BOLLARD disa...

Oracle子表外键需不需要索引【图】

一般情况下, Oracle 子表的外键需要添加索引, 如果外键不添加索引, 一下3种情况会导致 修改父表会锁住子表 1、更新父表主键, 一般情况下, Oracle 子表的外键需要添加索引, 如果外键不添加索引, 一下3种情况会导致 修改父表会锁住子表 1、更新父表主键,子表会被锁住 2、删除父表一行, 整个子表会被锁住 3、合并到父表,子表会被锁住。(9i,,10G是这样,11G不会)。 如果满足以下三种情况,则不需要在外键建立索引 1、没有...

Oracle怎么查外键建在哪个表上【图】

怎样查外键建在哪个表上有时候删除某张表记录的时候,会报错外键约束不能删除。如果不了解表之间的关系,可以通过以下语句查询到外键是建在哪张表上的:select * from dba_constraints where constraint_name=‘xxx‘ and constraint_type = ‘R‘; 例如:我的程序日志中报如下错误,我要知道外键是在那个表上.2015-09-08 18:28:18 [ main:261597003 ] - [ ERROR ] java.sql.SQLException: ORA-02291: 违反完整约束条件 (IRP.FK66E...

Oracle主键和外键相关知识

Oracle主键和外键相关知识标签:oracle主键和外键本文系统来源:http://7642644.blog.51cto.com/7632644/1701757

ORACLE学习04-表的操作(主键,外键,序列)

create table 表名(字段 字段类型 能否为空,... ... ); comment on column 表/字段 is 注释; 例子: create table COMPANY (COM_ID INTEGER not null,COM_NAME VARCHAR2(32) null,COM_ADDRESS VARCHAR2(100) null ); 二、创建主键/外键1,创建表的同时创建主键约束无命名 create table test1 ( id int primary key not null...

Oracle存储过程update受外键约束的主键值时完整性冲突解决方式【代码】

table Student(S# integer primary key, sname varchar2(20), age integer);(2)课程表,属性有课程号(主键)、课程名和学分:create table Course(C# integer primary key, cname varchar2(20), credit integer);(3)成绩表,属性有学号、课程号和分数,学号是学生表中学号外键、课程号是课程表中课程号外键:create table SC (S# integer foreign key (S#) references Student(S#) on delete cascadeC# integer foreign key (C#) re...

Linux oracle 导入导出单个表(没有外键约束的情况下)

expdp: SQL> create directory dir_tables as ‘/home/oracle/tables‘; SQL> grant read,write on directory dir_tables to 用户名; expdp system/system密码@SID tables=用户名.表名 directory=dir_tables dumpfile=tables.dmp logfile=tables.log impdp: SQL> create directory dir_tables as ‘/home/oracle/imp_tables‘; SQL> grant read,write on directory dir_tables to sys; impdp system/system密码 directory=dir_ta...

Oracle数据库作业-2 添加主键 外键【图】

一、在表student中添加主键sno 二、在表course中添加主键cno和外键tno 三、在表teacher中添加主键tno <img alt="技术分享" src="http://www.mamicode.com/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAh8AAADpCAIAAAALa8KrAAAgAElEQVR4nO2d+3MVVdb3+y94f0pNzQ/zy5O3BJ9XqKcmYabmvcylCOgIijCZCXINAjLjjRgVkWuO+jga7hEj1whMBIOC441HJAIJBAVvQJA7EQiRcNWYgFbpPNXvD33S2WfvvVbv3fc+vT61iuqzz76sXnvt/e0+56QxzF4GDRq0dOnSjo6Ole...

oracle 创建表 外键约束【代码】

table usertable(id int primary key,username varchar(32) not null,birthday date,sex char(1),address varchar(256));create table orders(id int primary key,user_id int not null,numberid varchar(32) not null,createtime date,note varchar(100),constraint fk_orders foreign key (user_id) references usertable(id) ); oracle 创建表 外键约束标签:date time user ble logs for constrain birt 约束 ...

Oracle表中添加外键约束

添加主键约束: ALTER TABLE GA_AIRLINE ADD CONSTRAINT PK_AIRLINE_ID PRIMARY KEY(AIRLINE_ID); 有三种形式的外键约束: 1、普通外键约束(如果存在子表引用父表主键,则无法删除父表记录) 2、级联外键约束(可删除存在引用的父表记录,而且同时把所有有引用的子表记录也删除) 3、置空外键约束(可删除存在引用的父表记录,同时将子表中引用该父表主键的外键字段自动设为NULL,但该字段应允许空值) 这三种外键约束的建立语法...

Oracle中主键、外键、索引、序列、唯一性约束的创建

1、主键的创建 方法一:直接在sql语句中声明字段主键约束 create table table_name (id type[length] constraint pk_name primary key,name tyoe[length],age type[length],class_id); 方法二:alter更改表添加约束 alter table table_name add constraint pk_name primary key (字段); 删除: alter table table_name drop constraint contraint_name; 重命名: alter table table_name rename constraint old_name to new_name; ...