Oracle约束支持3种Delete的行为
来源:互联网 发布:淘宝刷手举报有奖吗 编辑:程序博客网 时间:2024/05/01 13:10
1建表
SQL> create table t_p (id number, name varchar2(30));
Table created
SQL> alter table t_p add primary key (id);
Table altered
SQL> create table t_c (id number, fid number, name varchar2(30));
Table created
SQL> alter table t_c add constraint fk_t_c foreign key(fid) references t_p(id);
Table altered
SQL> insert into t_p values (1, 'a');
1 row inserted
SQL> insert into t_p values (2, 'b');
1 row inserted
SQL> insert into t_c values (1, 1, 'a');
1 row inserted
SQL> commit;
Commit complete
2on delete no action
SQL> delete t_p where id = 1;
delete t_p where id = 1
ORA-02292:违反完整约束条件 (MYHR.FK_T_C) -已找到子记录
SQL> UPDATE T_P SET ID = 3 WHERE ID = 1;
UPDATE T_P SET ID = 3 WHERE ID = 1
ORA-02292:违反完整约束条件 (MYHR.FK_T_C) -已找到子记录
3on delete set null
SQL> alter table t_c drop constraint fk_t_c;
Table altered
SQL> alter table t_c add constraint fk_t_c foreign key (fid) references t_p (id) on delete set null;
Table altered
SQL> delete t_p where id = 1;
1 row deleted
SQL> commit;
Commit complete
SQL> select * from t_p;
ID NAME
---------- ------------------------------
2 b
SQL> select * from t_c;
ID FID NAME
---------- ---------- ------------------------------
1 a
方格内为空
4on delete cascade
SQL> alter table t_c drop constraint fk_t_c;
Table altered
SQL> alter table t_c add constraint fk_t_c foreign key (fid) references t_p (id) on delete cascade;
Table altered
SQL> delete t_p where id = 1;
1 row deleted
SQL> select * from t_p;
ID NAME
---------- ------------------------------
2 b
SQL> select * from t_c;
ID FID NAME
---------- ---------- ------------------------------
记录被级联删除
- Oracle约束支持3种Delete的行为
- Oracle外键约束三种删除行为
- 接口的简单行为约束
- ORACLE 外键约束修改行为
- 小议Oracle外键约束修改行为
- oracle的五种约束
- 小议Oracle外键约束修改行为(一)
- Oracle约束的4种状态小结
- Oracle约束的4种状态小结
- oracle数据库的5种约束类型
- ORACLE的完整性约束
- Oracle 的约束
- ORACLE的约束
- ORACLE约束的属性
- oracle的约束
- oracle的表约束
- Oracle数据库的约束
- oracle约束的分类
- javascript创建css样式的方法
- Android开发环境搭建全程演示(jdk+eclipse+android sdk包含版本更新)
- shell基础一:文件安全与权限
- ECSHOP开发出现hacking attempt
- 跨服务器的复制表的方法
- Oracle约束支持3种Delete的行为
- WCF(2)我的第一个WCF程序,(解决方案结构、服务契约定义、服务契约定义等)
- JNI 头文件生成
- shell基础五:输入和输出(echo,read,cat,管道,tee,重定向等)
- Unicode下字符串与整型等的格式转换【转】
- disable/enable validate/novalidate的区别
- CString、TCHAR*、char*转换
- myeclipse to eclipse
- 李迟2011年4月知识积累