数据库上机实验8实验报告

更新时间:2024-05-06 11:09:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

上机实验八——完整性约束的实现

一、实习目的:

掌握SQL中实现数据完整性的方法,加深理解关系数据模型的三类完整性约束。

二、实习准备:

1. 复习“完整性约束SQL定义”

2. 完成习题四第10题中的各项操作的SQL语句。

3. 了解SQL Server 中实体完整性、参照完整性和用户自定义完整性的实现手段

三、实习内容:

1. 验证习题四第10题四个表结构的SQL语句。

表一:Sstudent

CREATE TABLE Sstudent

(Sno char(7) NOT NULL PRIMARY KEY, Sname VarChar(20) NOT NULL,

Ssex Char(2) NOT NULL DEFAULT('男') check(Ssex IN('男','女')), Sage smallint check(Sage >14 AND Sage<65), Clno Char(5) NOT NULL REFERENCES Cclass(Clno) ON UPDATE CASCADE);

表二:Ccourse

CREATE TABLE Ccourse

(Cno Char(1) NOT NULL PRIMARY KEY, Cname VarChar(20) NOT NULL,

Credit Smallint CHECK(Credit IN(1,2,3,4,5,6)));

表三:Cclass

CREATE TABLE Cclass

(Clno Char(5) NOT NULL PRIMARY KEY, Speciality VarChar(20) NOT NULL, Inyear Char(4) NOT NULL,

Number Integer CHECK(Number>1 AND Number<100), Mointor Char(7) REFERENCES Student(Sno) );

表四:Ggrade

CREATE TABLE Ggrade

(Sno Char(7) NOT NULL REFERENCES Student(Sno) ON DELETE CASCADE ON UPDATE CASCADE, Cno Char(1) NOT NULL REFERENCES Course(Cno) ON DELETE CASCADE ON UPDATE CASCADE,

Gmark Numeric(4,1) CHECK(Gmark>0 AND Gmark<100), PRIMARY KEY(Sno,Cno));

2. SQL Server中提供了那些方法实现实体完整性、参照完整体和用户自定义完整性

答:实体完整性:是通过主码的定义(PRIMARY KEY)来实现的;

参照完整性:是利用外部码(REFERENCES)的说明,以限制相关表中某些属性的取值,当用户违反规则时,提供三种:RESTRICT(限制策略),CASCADE(级联策略),SET NULL(置空策略);

用户自定义完整性:check约束,对元组的CHECK约束

本文来源:https://www.bwwdw.com/article/l3vg.html

Top