Oracle数据完整版性约束概述.pptxVIP

  • 3
  • 0
  • 约1.33千字
  • 约 12页
  • 2018-06-10 发布于上海
  • 举报
Oracle 12C数据库应用与设计 2 单元4 创建与维护Oracle数据表 Oracle数据完整性约束概述 3 数据库中的数据必须是正确的、一致的、完整的和可靠的,为了防止数据库中存在不符合语义规定的数据和防止因输入错误数据造成的无效操作,有必要实施数据的完整性约束,约束就是Oracle保证数据库中数据的完整性和一致性的手段。 4 从作用范围上来讲,Oracle的约束分为字段级约束(只应用于表中的一字段)和表级约束(应用于表的多个字段); 从功能上来分,Oracle中常用的约束类型有:主键(Primary Key)约束、外键(Foreign Key)约束、非空(Not Null)约束、唯一(Unique)约束和检查(Check)约束。 5 (1)主键约束 主键用于唯一标识数据表中的一行记录,主键约束在每一个数据表中只能有一个,主键可以是单个字段,也可以是多个字段的组合(即表级约束)。 主键约束的字段或组合字段对应的数据都非空并且唯一。可以在创建数据表时一起创建主键约束,也可以在数据表创建完成后使用Alter Table语句创建主键约束。 6 (2)外键约束 外键约束也称为参照完整性约束,它保证数据的参照完整性并限定了一个字段的取值范围,即一个表的某字段取值必须是参照本表或另一个表的主键(或唯一键)字段值,这样可以保证使用外键约束的表字段与所引用的主键约束的表字段的数据一致性和完整性。 在关系数据库中,一般使用外键来实现一对多的表间关系,外键约束为表中一字段或多字段数据提供引用完整性,它限制插入到表中的外键字段的值必须在被引用表中已经存在。 7 (3)非空约束 非空约束限制表字段值不允许为空(即NULL),当插入或修改数据时,设置了非空约束的字段值不允许为空,必须为具体的值。 默认情况下,Oracle允许字段值为NULL,如果要求某字段的值不能为NULL就需要设置非空约束。 8 主键的字段默认为NOT NULL,不需要再指定,定义了非空约束的字段在添加数据时不能作为省略字段,除非有默认值设置。 如果数据表中的某一字段有空值(NULL),那么就不能把该字段设置为主键字段,但可以设置成唯一约束。 9 (4)唯一约束 唯一约束可以保护数据表中的单个字段或多个字段的组合值任何两行(全部为NULL除外)都不相同,确保一个字段或多个字段不出现重复值。由于NULL是未知对象,所以Oracle数据库认为多个NULL值是非重复的。 在一个数据表中可以存在多个唯一约束,但主键约束只允许存在一个。声明为主键的字段不允许有空值,但是声明为唯一约束的字段允许有空值(NULL)的存在。 10 (5)检查约束 检查约束用于规定表字段允许输入的值,以保证数据的正确性和有效性。 检查约束实际上定义了一种输入验证规则,表示一个表字段的输入内容必须符合该字段的检查约束条件,如果输入的内容不符合规定条件,则输入的数据无效。 11 (6)默认值约束 默认值约束指定字段的默认值。可以创建数据表时为字段指定默认值,也可以在修改数据表时为字段指定默认值。默认值约束定义的默认值仅在执行Insert操作插入数据时生效,一个字段至多有一个默认值,其中包括NULL值。

文档评论(0)

1亿VIP精品文档

相关文档