数据库系统概论学习笔记——数据完整性

数据库完整性

1、实体完整性

1.1 定义实体完整性

  1. 表级约束

    单属性码表级约束

    CREATE TABLE Student
    (Sno CHAR(9),
     Sname CHAR(20) NOT NULL,
     Ssex CHAR(2),
     PRIMARY KEY (Sno) /* 单属性主码表级约束 */
    );
    

    多属性码表级约束

    CREATE TABLE SC
    (SNO CHAR(9) NOT NULL,
     CNO CHAR(4) NOT NULL,
     GRADE SMALLINT,
     PRIMARY KEY(SNO,CNO) /* 多个属性构成的主码只能有一种说明方法,即表级约束 */
    );
    
  2. 列级约束

    CREATE TABLE Student
    (Sno CHAR(9) PRIMARY KEY, /* 主码列级约束 */
     Sname CHAR(20) NOT NULL,
     Ssex CHAR(2),
     PRIMARY KEY (Sno)
    );
    

1.2 实体完整性检查和违约处理

1.2.1 检查内容:

  1. 检查主码值是否唯一,不唯一则拒绝插入或修改。

  2. 检查主码的各个属性是否为空(多属性主码),为空则不允许进行操作。

2、参照完整性

参照完整性主要用于外键的参照关系

2.1 定义参照完整性

外码参照完整性

CREATE TABLE SC
(Sno CHAR(9) NOT NULL,
 Cno CHAR(4) NOT NULL,
 Grade SMALLINT,
 PRIMARY KEY(Sno,Cno), /* 多个属性构成的主码只能有一种说明方法,即表级约束 */
 FOREIGN 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值