数据库原理实验指导书

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库原理》实验指导书

《数据库原理》上机实验

上机学时:8学时

一、上机性质、目的及任务:

通过上机实践,配合课堂教学内容加深对数据库的基本概念和基本技术的理解,掌握数据库系统设计的基本思想和基本步骤,熟悉关系数据库的标准语言SQL,并对典型的关系数据库管理系统有较深入的了解,使学生的动手能力有较大的提高。

二、面向专业:

计算机类各专业

三、实验指导书:

见下页

四、实验内容:

实验一数据库管理系统及SQL定义语言的使用

实验二SQL语言(二)SQL语言进行简单查询

实验三SQL语言(三)SQL进行复杂查询

实验四SQL语言(四)SQL的常用数据更新操作

实验一数据库管理系统及SQL定义语言的使用

一、实验目的

(1)认识几种常见的数据库管理系统,熟悉它们的使用界面;

(2)熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。

(3)熟悉SQL数据定义语言(DDL)

二、实验内容

(1)分别在Access 和SQL SERVER2005 中建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。

(2)用SQL语言进行基本表结构的定义、修改、删除,索引的建立和删除

三、实验步骤:

分别在ACCESS数据库管理系统和SQL SERVR 2005环境下利用图形操作界面(非SQL语句)实现以下操作:

1、创建用于学生管理的数据库,数据库名为XSGL,包含学生信息,课程信息和选课信息。数据库XSGL包含下列3 个表:

(l)student:学生基本信息。

(2)course:课程信息表。

(3)sc:学生选课表。

各表的结构分别如表1、表2和表3 所示。

提示:在不使用SQL语句创建表的情况下,可通过ACCESS中的关系(菜单—工具—关系)和SQL SERVER 2005中的数据库关系图(数据库节点展开—数据库关系图)实现外键的创

建。外键字段和参照字段之间的数据类型以及长度要保持一致。

2、输入表中的记录

楚先输入那些表中记录,为什么?

3、对表中的记录进行浏览、修改、删除操作。

4、利用“分离数据库”和“附加数据库”操作对SQL Server中创建的数据库做备份和还原操作。

5、在SQL SERVER 2005中新建查询,建立到服务器的连接

6、用SQL语言CREATE TABLE语句创建实验一中学生表student、课程表

course和选课表sc及其相应约束,

具体约束如下:

7、向创建的表中输入数据,测试所创建的完整性约束是否起作用

8、用SQL语言ALTER语句修改表结构;

1)STUDENT表中增加一个字段入学时间scome,

2)删除STUDENT表中sdept字段;

3)删除创建的SC表中CNO字段和COURSE表CNO字段之间的外键约束;

4)重建3)中删除的约束

9、重新定义一个简单表,然后用SQL语言DROP语句删除该表结构;

10、用SQL语言CREATE INDEX语句定义表STUDENT的SNAME字段的降序唯一索引;

11、用SQL语言DROP语句删除索引;

实验二SQL(二)SQL语言进行简单查询

目的:

掌握简单数据查询操作。

内容:

使用各种查询条件完成指定的查询操作

步骤:

1)创建学生表student、课程表course和选课表SC,并输入数据(注意数据的完整性。);(可以使用实验一中已经建立的表和数据)

2) 对各表中的数据进行不同条件的查询;

包括的运算:投影、选择、比较运算符、逻辑运算符、字符匹配运算符、匹配列表范围、算术运算符、内部函数、排序、分组、分组函数使用(1)查询全体学生的学号和姓名

(2)查询全体学生的详细记录

(3)查询软件学院的学生姓名、年龄、系别

(4)查询所有选修过课程的学生学号(不重复)

(5)查询考试不及格的学生学号(不重复)

(6)查询不是软件学院、计算机系的学生性别、年龄、系别

(7)查询年龄18-20岁的学生学号、姓名、系别、年龄;

(8)查询姓刘的学生情况

(9)查询姓刘或姓李的学生情况

(10)查询姓刘且名字为两个字的学生情况

(11)查询1983年以后出生的学生姓名。

(12)创建表 studentgrad(sno,mathgrade,englishigrade,chinesegrade)

计算学生各科总成绩并赋予别名

(13)利用内部函数year()查找软件学院学生的出生年份

(14)利用字符转换函数实现字符联接。

Select sname + ‘年龄为’+cast(sage as char(2))+’岁’

From student

(15)查询全体学生情况,查询结果按所在系升序排列,对同一系中的学生按年龄降序排列。

(16)查询学生总人数。

(17)查询选修了课程的学生人数。

(18)查询选修了7号课程的学生总人数和平均成绩

(19)查询选修6号课程学生的最好成绩

(20)查询每个系的系名及学生人数。

(21)查找每门课的选修人数及平均成绩

(22)查找没有先修课的课程情况

要求:

1、将上述任务中完整的SQL语句调试并使之运行正确;

2、写出实验报告;

相关文档
最新文档