利用Oracle数据库表完整性功能提高数据输入准确率(二)

  在一般的管理系统中,无论是小小的考勤系统,还是大的ERP系统,一般都会包含两张表。一张是员工信息表,一张是部门信息表。

  

利用Oracle数据库表完整性功能提高数据输入准确率(一)

  二、参照完整性。

  在一般的管理系统中,无论是小小的考勤系统,还是大的ERP系统,一般都会包含两张表。一张是员工信息表,一张是部门信息表。如下表所示:

员工信息表

员工编号   性别  部门
 SA001  男  销售
 SA002  男  销售
 PR001  男  采购

 部门信息表

部门编号   部门名称
 SA  销售
 SA  销售
 PR  采购

  现在我们希望,在员工信息表处定义的部门信息必须存在与部门信息表中。也就是说,当部门信息表中没有定义这个部门的话,在员工信息表中将部门输入这个部门。如在部门信息表里,我们没有输入研发部门,此时,在员工信息表中,我们若把一个员工归属于研发部门的话,则系统要能够提示错误信息,告诉用户这个部门还没有定义,需要先定义该部门信息。

  这个需求就是要通过参照完整性来实现。参照完整性是指互相关联的两个表之间的约束,具体的说,就是从表中每条记录外键的值必须是主表中所存在的。因此,如果在两个表之间建立了关联关系,则对一个表进行的操作要影响到另一个表中的记录。下面,我结合具体的实例,讲述一下参照完整性的具体实现方式及需要注意的地方。

  1、 建立部门信息表。

Oracle表完整性

  表建立完成以后,给部门信息表中插入销售与采购两条记录。

Oracle表完整性

  技巧说明:当我们利用语句给一个表中插入记录的时候,如果表中有两个字段,我们给这两个字段都赋值的话,则在插入语句中,可以不写字段的名称。但是,若插入一条记录的时候,一条记录的某个字段没有赋值的话,则要注意一定要按赋值的顺序把字段名一一写清楚。

Tags: 

延伸阅读

最新评论

发表评论