数据库系统概论|第五章:数据库完整性—课程笔记

前言

在前文介绍完数据库标准语言SQL之后,大家已经基本上掌握了关于数据库编程的基本操作,那我们今天将顺承介绍关于数据库完整性的介绍,数据库的完整性是指数据的正确性和相容性。数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据

一、数据库完整性概述

数据库的完整程度极大程度上地决定了在数据库中所导入数据的正确性与否,对于数据库完整性的正确操作与设置,可以确保所输入数据的有效性与可利用性。

为维护数据库的完整性,数据库管理系统必须能够实现:

  • 提供定义完整性约束条件的机制;
  • 提供完整性检查的方法
  • 进行违约处理

其实简单理解就是应该具备三个功能:定义完整性→检查完整性→控制完整性,所以在进行编程的过程中,也应该注意SQL语言的编译。

依据对象的级别,完整性约束可以分为:

  • 列级约束:针对列的类型、取值范围、精度、排序规则等制定的约束条件。
  • 元组级约束:元组中的字段组和字段间联系的约束。
  • 表级约束:若干元组间、关系中以及关系之间联系的约束。

二、实体完整性

2.1定义实体完整性

关系模型的实体完整性在CREATE TABLE中用PRIMARY KEY定义。对单属性构成的码有两种说明方法,一种是定义为列级约束条件,另一种是定义为表级约束条件。对多个属性构成的码只有一种说明方法,即定义为表级约束条件

CREATE TABLE Student (
	Sno CHAR(9) PRIMARY KEY,
	Sname CHAR(20) NOT NULL, 
	Ssex CHAR(2),
	Sage SMALLINT,
	Sdept CHAR(20)
)

上述代码利用列级约束条件,直接在建表过程中,在相应的属性列后面直接标明PRIMARY KEY,即代表所在列为该表的主码,如上述代码,即代表:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值