《数据库原理》实验指导书 下载本文

数据库系统概论实验指导书

Cno 学号 Sno Cname Cpno 课程号 Cno ccredit 成绩 grade 4. 创建课程关系表SC :

5. 将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。 6. 在表S上增加“出生日期”属性列。 7. 删除表S的“年龄” 属性列。

8. 在表S上,按“Sno” 属性列的唯一值方式建立索引。 9. 在表SC上,按“grade” 属性列的多值方式建立索引。 10. 删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。

11. 选做:创建教材P74-75--习题5、SPJ数据库中的四个关系S,P,J,

SPJ。

八、实验思考

1、 定义表结构是对数据模型的那个要素进行描述,对主属性有什么要求? 2、 修改表结构时,能否修改已定义属性的参数?新增加的属性列能否定义为非

空?为什么?

3、 分别在表S、SC上按“sno”列的唯一值方式建立索引,可能出现问题吗?

情况有什么区别?

4、 能否在非主属性列上建立索引?其恰当的方式是什么? 九、问题

1、 在表的定义中,如何确定属性是 NOT NULL / NULL? ( 主码 ,关键字,主

属性/主属性)

2、 能否将S,C,SC表单独以一个数据文件的形式保存在磁盘上? 3、 在表S的“SNO”,“SNAME”属性上分别按唯一值方式建立索引和在S的

“SNO”,“SNAME”上唯一值方式建立联合索引有无区别? 4、 要修改主属性的定义,正确的方式是什么?

实验三 数据更新实验

3

数据库系统概论实验指导书

一、学时

2学时 二、实验类型

综合、设计 三、实验目的

熟悉和掌握数据表中数据的插入、修改、删除操作和命令的使用; 加深理解表的定义对数据更新的作用 四、需用仪器、设备

486及以上微机; Windows95/97/98操作系统; 安装了SQL SERVER 五、实验准备

1.熟悉SQL SERVER 工作环境; 2. 连接到学生-课程数据库

3. 复习对表中数据的插入、修改和删除的SQL语言命令; 六、实验方法及步骤

1. 将数据插入当前数据库的表S、C、SC中;

A:用SQL命令形式

B:用SQL SERVER提供的企业管理器以交互方式进行

2. 将以上插入的数据分别以.SQL文件和.txt文件的形式保存在磁盘上; 3. 修改表S、C、SC中的数据; A:用SQL命令形式

B:用SQL SERVER提供的企业管理器以交互方式进行

4. 删除表S、C、SC中的数据。

A:用SQL命令形式

B:用SQL SERVER提供的企业管理器以交互方式进行 七、实验内容

1. 将数据分别插入表S、C、SC;

2. 将表S、C、SC中的数据分别以.SQL文件和.txt文件的形式保存在磁盘上。 3. 在表S、C、SC上练习数据的插入、修改、删除操作。(比较在表上定义/

4

数据库系统概论实验指导书

未定义主码(Primary Key)或外码(Foreign Key)时的情况)

4. 将表S、C、SC中的数据全部删除,再利用磁盘上备份的数据来恢复数据。 5. 如果要在表SC中插入某个学生的选课信息(如:学号为“200215121”,课

程号为“c123”,成绩待定),应如何进行? 6. 求各系学生的平均成绩,并把结果存入数据库; 7. 将“CS”系全体学生的成绩置零; 8. 删除“CS”系全体学生的选课记录; 9. 删除学号为“S1”的相关信息;

10. 将学号为“S1”的学生的学号修改为“S001”;

11. 把平均成绩大于80分的男同学的学号和平均成绩存入另一个表S——

GRADE(SNO,AVG——GRADE);

12. 把选修了课程名为“数据结构”的学生的成绩提高10%;

13. 把选修了“C2”号课程,且成绩低于该门课程的平均成绩的学生的成绩提

高5%;

14. 把选修了“C2”号课程,且成绩低于该门课程的平均成绩的学生成绩删除

掉;

15. 选做:将数据插入SPJ数据库中的四个表S,P,J,SPJ中,并以.SQL文

件和.txt文件的形式保存在磁盘上。

八、实验思考

1.使用SQL的更新语句时,一次可以对几个表进行更新。

2.在进行数据更新时,可能产生破坏数据完整性的情况,因此,在数据更新(尤其是多表更新)时,应注意什么问题。

3.比较表中定义/未定义主码(Primary Key)时,对表S的更新操作有何异同。 4.比较在表之间定义/未定义外码(Foreign Key)时,对表S的更新操作有何

异同。

5.若要修改已定义表的属性或删除已定义表的某一属性列,应如何进行? 九、问题

1.在表上未定义主码时,数据更新的情况?

2.如果在表S 和SC 表上建立了外码联系时,要删除学号为‘S2’的学生记录,应如何进行?如果在表S 和SC 表上未建立外码联系,情况会是怎样的?

DELETE FROM \

WHERE \ ;

5

数据库系统概论实验指导书

DELETE FROM \ WHERE \ ;

DELETE FROM \ WHERE \ ; DELETE FROM \ WHERE \ ;

实验四 数据查询实验

一、学时

6学时 二、实验类型

综合 三、实验目的

熟悉和掌握对数据表中数据的查询操作和SQL命令的使用,学会灵活熟练的使用SQL 语句的各种形式;

加深理解关系运算的各种操作(尤其的关系的选择,投影,连接和除运算) 四、需用仪器、设备

486及以上微机; Windows95/97/98操作系统; 安装了SQL SERVER。 五、实验准备

1.熟悉SQL SERVER 工作环境; 2.连接到学生-课程数据库

3.复习对表中数据查询的SQL语言命令; 六、实验方法及步骤

1.在表S、C、SC上进行简单查询; 2.在表S、C、SC上进行连接查询; 3.在表S、C、SC上进行嵌套查询; 4.使用聚合函数的查询;

6