数据库实验3[实验报告]_第1页
数据库实验3[实验报告]_第2页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浙江大学实验报告课程名称: 数据库系统原理 实验类型: 上机 实验项目名称: SQL数据完整性 实验目的和要求 熟悉通过SQL进行数据完整性控制的方法。一、 实验内容和原理 1. 定义若干表,其中包括primary key, foreign key 和check的定义。2. 让表中插入数据,考察primary key如何控制实体完整性。3. 删除被引用表中的行,考察foreign key 中on delete 子句如何控制参照完整性。4. 修改被引用表中的行的primary key,考察foreign key 中on update 子句如何控制参照完整性。5. 定义一个asseration,

2、并通过修改表中数据考察断言如何控制数据完整性。6. 定义一个trigger, 并通过修改表中数据考察触发器如何起作用。7. 完成实验报告。二、 实验平台数据库管理系统:SQL Server 或MySQL四、操作方法与实验步骤及结果1. 定义若干表,其中包括primary key, foreign key 和check的定义。 如下图所示,建立了三个表分别为classroom,department 和course,其中主键分别被定义为building,dept_name,然后又定义了course中的的dept_name为外键。在course的定义中还有一个定义check的语句。2. 让表中插入数

3、据,考察primary key如何控制实体完整性。向department中插入主键为null的数据是报错,从而控制了实体完整性。但当插入数据其他属性为0(不为主键)时,可以进行成功的插入操作。插入后的结果显示如下。3. 删除被引用表中的行,考察foreign key 中on delete 子句如何控制参照完整性。首先建立两个表school和students,并向其中插入数据,显示结果如下。在先前定义了students表school_name为school中这一属性的外键,下面将进行删除的操作。删除school中一项学校名字是huzhou的数据,结果如下,可以看出students表中的这行也被删

4、去,从而控制了参照完整性。4. 修改被引用表中的行的primary key,考察foreign key 中on update 子句如何控制参照完整性。 仍利用上一部分的表,进行更新的操作,将school中的一项更新,结果如下图所示,students中的也同样被更新。5. 定义一个asseration, 并通过修改表中数据考察断言如何控制数据完整性。在MySQL中,可能是我没有找到相关的资料或者对其语言应用并不熟悉,并没有找到asseration的定义,在网上查找资料后发现MySQL中constraint可以起到与asseration相同的作用,细微在差别在于约束的范围不同,在本次实验中可以忽略

5、不计。所以下面进行有关constraint的定义。 如图,定义一个constraint,对room表中seats属性进行约束。当输入限制以外的部分是报错名结果如下。6. 定义一个trigger, 并通过修改表中数据考察触发器如何起作用。如图定义了两个表,图中查看两个表的内容。定义一个触发器在test1进行删除操作时在test2中删除相同元素,运行后结果如下。成功地进行了操作。5、 心得与体会本次实验,定义若干表,其中包括primary key, foreign key 和check的定义。向表中插入数据,考察primary key如何控制实体完整性。删除被引用表中的行,考察foreign key 中on delete 子句如何控制参照完整性。修改被引用表中的行的primary key,考察foreign key 中on update 子句如何控制参照完整性。定义一个asseration, 并通过修改表中数据考察断言如何控制数据完整性。定义一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论