《数据库系统原理》实验指导书范文(共20页).doc
《《数据库系统原理》实验指导书范文(共20页).doc》由会员分享,可在线阅读,更多相关《《数据库系统原理》实验指导书范文(共20页).doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上数据库系统原理实验指导书计算机科学与技术与学院计算机科学与技术系二一二年目 录专心-专注-专业实验一 认识DBMS一、实验目的1通过对某个商用数据库管理系统的安装使用,初步了解DBMS的工作环境和系统构架。在此推荐SQL SERVER2005。2熟悉DBMS的安装、配置及使用。3搭建今后实验的平台。二、实验平台操作系统:Windows XP。数据库管理系统:SQL SERVER2005。选择安装各个数据库管理系统之前,请仔细看清硬件的配置要求。三、实验内容和要求1根据安装文件的说明安装数据库管理系统。在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样
2、的配置,对今后运行数据库管理系统会有什么影响。2学会启动和停止数据库服务。 在正确安装SQL SERVER2005后,SQL SERVER数据库引擎服务会在系统启动时自动启动。如果要手动地启动和停止数据库引擎服务,可以通过SQL SERVER配置管理器(SQLSERVER CONFIGURATION MANAGER)来进行管理。SQL SERVER配置管理器综合了SQLSERVER 2000中的服务管理器、服务器网络适用工具和客户端网络实用工具的功能。打开 SQL SERVER配置管理器工具,单击“SQL SERVER2005服务”节点,其中的“SQL SERVER”服务就是我们所说的数据库引
3、擎。与SQL SERVER 2000一样,可以通过这个配置管理器来启动、停止所安装的服务,如“SQLSERVER(MSSQLSERVER)”。3了解RDBMS系统的体系结构。 SQL SERVER2005是一款具有“客户机/服务器”架构的关系型数据库管理系统,它使用T-SQL语言在客户机和服务器之间传递客户机的请求和服务器的响应。 数据库体系结构:又划分为数据库逻辑结构和数据库物理结构。数据库逻辑结构主要应用于面向用户的数据组织和管理,如表、视图、存储过程和触发器、约束等。数据库物理结构主要应用于面向计算机的数据组织和管理,如数据以表文件的形式存放在硬盘上。4了解RDBMS的管理和使用。例如S
4、QL SERVER Management Studio是SQL SERVER 2005种最重要的管理工具,它融合了SQL SERVER2000的查询分析器和企业管理器、OLAP分析器等多种工具的功能,为管理人员提供了一个简单的实用工具,使用这个工具既可以用图形化的方法,也可以通过编写SQL语句来实现数据库的操作。5初步了解RDBMS的安全性,这里主要是服务器用户的登录和服务器预定义角色。可以尝试建立一个新的登录名,赋予其数据库管理员的角色,今后的实验可以用该登录名来创建数据库用户。实验二 交互式SQL(4小时)一、实验目的熟悉通过SQL对数据库进行操作。二、实验工具利用实验一中安装的RDBMS
5、及其交互查询工具来操作SQL语言。三、实验内容和要求1在RDBMS中建立一个学生-课程数据库,进行实验所要求的各种操作,所有的SQL操作均在此建立的新库里进行。2根据以下要求认真进行实验,记录所有的实验用例及执行结果。数据定义:基本表的创建、修改及删除;索引的创建和删除。数据操作:完成各类查询操作(单表查询,连接查询,嵌套查询,集合查询);完成各类更新操作(插入数据,修改数据,删除数据)。视图的操作:视图的定义(创建和删除),查询,更新(注意更新的条件)。特别说明:实验中注意特定数据库系统(如SQL SERVER)的SQL语句格式与SQL-3标准的区别。参考实验用例:(一)数据定义:一基本表的
6、操作1建立基本表1)创建学生表Student,由以下属性组成:学号Sno(char型,长度为9,主码),姓名Sname(char型,长度为20,唯一),性别Ssex(char型,长度为2),年龄(smallint),所在系(char型,长度为20)。 create table Student (Sno char(9) primary key,Sname char(20) unique,Ssex char(2),Sage smallint,Sdept char(20);2)创建课程表Course,由以下属性组成:课程号Cno(char型,主码,长度为4),课程名Cname(char型,长度为40
7、),先行课Cpno(char型,长度为4,外码),学分Ccredit(smallint)。 create table Course(Cno char(4) primary key,Cname char(40),Cpno char(4),Ccredit smallint);3)创建学生选课表SC,由以下属性组成:学号Sno(char型,长度为9),课程号Cno(char型,长度为4),成绩Grade(smallint),其中Sno和Cno构成主码。create table sc(Sno char(9),Cno char(4),Grade smallint,primary key(Sno,Cno)
8、,foreign key (Sno) references student(Sno),foreign key (Cno) references course(Cno);2修改基本表:1)向Student表增加“入学时间列”,其数据类型为日期型。 alter table Student add S_entrance date;2)将年龄的数据类型由字符型(假设原来的数据类型是字符型)改为整数。 alter table Student alter column Sage int;3)增加课程名称必须取唯一值的约束条件。 alter table Course add unique(Cname);3删
9、除基本表:1)在所有的操作结束后删除Student表。 drop table Student;2)在所有的操作结束后删除Course表。 drop table Course;3)在所有的操作结束后删除SC表。 drop table SC;二索引操作1建立索引1)为学生课程数据库中的Student,Course,SC 3个表建立索引。其中Student表按学号升序建唯一索引,Course表按课程号升序建唯一索引,SC表按学号升序和课程号降序建唯一索引。create unique index Stusno on Student(Sno);create unique index Coucno on
10、Course(Cno);create unique index SCno on SC(Sno ASC,Cno DESC);2删除索引1)删除Student表的Stusname索引。 drop index Stusname; (二)数据操作一更新操作1,插入数据1)在Student表中插入下列数据: ,李勇,男,20,CS ,刘晨,女,19,CS ,王敏。女,18,MA,张立,男,19,ISinsert into student(Sno,Sname,Ssex,Sage,Sdept)values(,李勇,男,20,CS);insert into student(Sno,Sname,Ssex,Sag
11、e,Sdept)values(,刘晨,女,19,CS);insert into student(Sno,Sname,Ssex,Sage,Sdept)values(,王敏,女,18,MA);insert into student(Sno,Sname,Ssex,Sage,Sdept)values(,张立,男,19,IS)2)在Course表中插入以下数据:1,数据库,5,42,数学,null,26,数据处理,null,24,操作系统,6,37,PASCAL语言,6,45,数据结构,7,41,数据库,5,43,信息系统,1,4insert into course(Cno,Cname,Cpno,Ccr
12、edit)values(1,数据库,5,4);insert into course(Cno,Cname,Ccredit)values(2,数学,2);insert into course(Cno,Cname,Ccredit)values(6,数据处理,2);insert into course(Cno,Cname,Cpno,Ccredit)values(4,操作系统,6,3);insert into course(Cno,Cname,Cpno,Ccredit)values(7,PASCAL语言,6,4);insert into course(Cno,Cname,Cpno,Ccredit)val
13、ues(5,数据结构,7,4);insert into course(Cno,Cname,Cpno,Ccredit)values(1,数据库,5,4);insert into course(Cno,Cname,Cpno,Ccredit)values(3,信息系统,1,4);3) 在SC表中插入以下数据:,1,92,2,85,3,88,2,90,3,80insert into sc (Sno,Cno,Grade) values (,1,92);insert into sc (Sno,Cno,Grade) values (,2,85;insert into sc (Sno,Cno,Grade) v
14、alues (,3,88);insert into sc (Sno,Cno,Grade) values (,2,90);insert into sc (Sno,Cno,Grade) values (,3,80);4)将一个新学生元祖(学号:;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中。 insert into student (Sno,Sname,Ssex,Sdept,Sage) values (,陈冬,男,IS,18);5)将学生张成民的信息插入到Student表中。 insert into student values(,张成民,男,18,CS);6)插入一
15、条选课记录:(,1)。 insert into sc(Sno,Cno) values(,1);7)对每一个系,求学生的平均年龄,并把结果存入数据库。 create table Dept_age (Sdept char(15), Avg_age smallint); insert into Dept_age (Sdept,Avg_age) select Sdept,avg(Sage)from student group by Sdept;2修改数据1)将学生的年龄改为22岁。update student set Sage=22 where Sno=;2)将所有学生的年龄增加一岁。 update
16、student set Sage=Sage+1;3)将计算机科学系全体学生的成绩置零。update sc set Grade=0 where CS=(select Sdept from student where student.Sno=sc.Sno);3删除数据1)删除学号为的学生记录。 delete from student where Sno=;2)删除所有学生的选课记录。 delete from sc;3)删除计算机科学系所有学生的选课记录。 delete from sc where CS=(select Sdept from student where student.Sno=SC.
17、Sno );二查询操作1单表查询1)查询全体学生的学号与姓名。 select Sno,Sname from student;2) 查询全体学生的姓名、学号、所在系。 select Sname,Sno,Sdept from student;3) 查询全体学生的详细记录。 select * from student;4) 查询全体学生的姓名及其出生年份。 select Sname,2011-Sage from student;5) 查询全体学生的姓名、出生年份和所在院系,要求用小写字母表示所有系名。 select Sname,Year of Birth:,2011-Sage ,lower(Sdep
18、t) from student; select Sname NAME,Year of Birth: BIRTH,2011-Sage BIRTHDAY,lower(Sdept) DEPARTMENT from student;6)查询选修了课程的学生学号。 select distinct Sno from sc; 7)查询计算机科学系全体学生的名单。 select Sname from student where Sdept=CS; 8)查询所有年龄在20岁以下的学生姓名及其年龄。 select Sname,Sage from student where Sage20; 9)查询考试成绩有不及格
19、的学生的学号。 select distinct Sno from sc where Grade60; 10)查询年龄在20-23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄。 select Sname,Sdept,Sage from student where Sage between 20 and 23; 11) 查询年龄不在20-23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄。 select Sname,Sdept,Sage from student where Sage not between 20 and 23; 12)查询计算机科学系(CS)、数学系(MA)、和信息
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库系统原理 数据库 系统 原理 实验 指导书 范文 20
限制150内