Oracle_6 约束条件
来源:互联网 发布:对接微信公众号源码 编辑:程序博客网 时间:2024/05/16 14:36
约束就是指对插入数据的各种限制,例如:人员的姓名不能为空,人的年龄只能在0~100岁之间。约束可以对数据库中的数据进行保护。约束可以在建表的时候直接声明,也可以为已建好的表添加约束。
1. NOT NULL:非空约束
例如:学生表中学号不能为空
2. PRIMARY KEY:主键约束
主键约束的限制条件是:不能重复,不能为空
例如:一个人的身份证号不能重复也不能为空
3. UNIQUE:唯一约束,值不能重复(空值除外)
例如:人员中有电话号码,电话号码不能重复。
4.CHECK:条件约束,插入的数据必须满足某些条件
例如:人员有年龄,年龄的取值只能是0~100 岁之间
5.Foreign Key:外键
例如:有一种情况:一个人有很多本书:
Person 表
Book 表:而且book 中的每一条记录表示一本书的信息,一本书的信息属 于一个人
以上的代码没有任何错误,但是没有任何意义,因为一本书应该属于一个人, 所以在此处的pid 的取值应该与person 表中的pid 一致。 此时就需要外键的支持。修改book 的表结构。
6.级联删除
那么再分析:
如果假设一个人的人员信息没有了,那么此人所拥有的书还应该存在吗?最好,如果person 中的一条数据没了,则对应在book 中的数据也应该同时消失。在之前的结构上执行delete 语句,删除person 表中的一条记录:
DELETEFROM person WHERE pid=11;
提示不能删除的错误:因为book 中存在了此项的关联,如果person表中的 一条数据删除了,则肯定会直接影响到book 表中数据的完整性,所以不让删除。如果非要删除,则应该先删除book 表中的对应数据,之后再删除person 表中的对应数据。此时如果想完成删除person 表的数据同时自动删除掉book 表的数据操作,则必须使用级联删除。在建立外键的时候必须指定级联删除(ON DELETE CASCADE)。
7.删除约束:
注:sql语句中的注释应该是
文中只是为了便于区别使用编程语言的注释符号
本文出自《Oracle教程》感谢原作者Louis
- Oracle_6 约束条件
- 约束条件
- 降低约束条件
- 约束条件(constraint)
- 完整性约束条件
- mysql约束条件
- MySQL 约束条件
- 约束条件(constraint)
- 约束条件(constraint)
- Interbase 的约束条件
- SQL Server中的约束条件
- oracle约束条件的添加
- oracle完整性约束条件
- 违反唯一约束条件
- 删除表删除约束条件
- 创建表-各种约束条件
- 创建表和约束条件
- 查找plsql的约束条件
- 对++x,x++的思考
- 一、验证码简介
- 笑傲测试
- Select中DISTINCT关键字的用法
- win7下安装ruby on rails + mysql5.1 + cassandra
- Oracle_6 约束条件
- IDOC实例, Outbound IDOC
- 学习二
- u-boot-1.3.4移植到mini2440+128M nand boot
- 如何在word文档里面的小方框内打钩
- IDOC实例, Inbound IDOC
- 我有点着急
- IDOC实例,消息方式的IDOC
- 硬盘看颜色读性能···