
《数据库原理及应用》实验教学大纲一、实验教学内容及要求实验一SQLServer安装与配置【实验类型】验证性【目的与要求】目的:通过SQLServer的安装,熟悉软件的安装过程,了解安装所需硬件与软件的要求,对SQLServer的常用工具有一定的了解,完成SQLServer的环境配置。要求:阅读实验题目、完成软件安装,熟悉上机环境,完成环境配置。【内容提要】1.安装SQLServer软件的方法,完成安装SQLServer,熟悉每一步的选项和具体内容。2.掌握SQLServe的环境配置。3.启动SQLServer管理工具,熟悉该软件的操作界面,对SQLServer工具进行探索。4.了解安装后系统自带数据库的主要用途。【所需主要仪器设备】微型计算机一台(Pentium或以上)、SQLServer安装包。实验二、基本表、索引与视图的定义、删除和修改【实验类型】验证性【目的与要求】目的:熟悉SQLServer的企业管理器的用法,熟悉SQLServer的常用数据类型,加深对SQL语言的定义语句的理解。熟练掌握基本表、索引与视图的创建与修改,进一步巩固在SQLServer中操作基本表、索引和视图的能力。要求:阅读实验题目、完成数据对象的创建及要求的数据操作,正确使用DDL命令完成对应操作。1
1 《数据库原理及应用》实验教学大纲 一、实验教学内容及要求 实验一 SQL Server 安装与配置 【实验类型】 验证性 【目的与要求】 目的:通过 SQL Server 的安装,熟悉软件的安装过程,了解安装所需硬件与软件 的要求,对 SQL Server 的常用工具有一定的了解,完成 SQL Server 的环境配置。 要求:阅读实验题目、完成软件安装,熟悉上机环境,完成环境配置。 【内容提要】 1.安装 SQL Server 软件的方法,完成安装 SQL Server,熟悉每一步的选项和具体 内容。 2.掌握 SQL Serve 的环境配置。 3.启动 SQL Server 管理工具,熟悉该软件的操作界面,对 SQL Server 工具进行 探索。 4.了解安装后系统自带数据库的主要用途。 【所需主要仪器设备】 微型计算机一台(Pentium 或以上)、SQL Server 安装包。 实验二 基本表、索引与视图的定义、删除和修改 【实验类型】 验证性 【目的与要求】 目的:熟悉 SQL Server 的企业管理器的用法,熟悉 SQL Server 的常用数据类型, 加深对 SQL 语言的定义语句的理解。熟练掌握基本表、索引与视图的创建与修改,进一 步巩固在 SQL Server 中操作基本表、索引和视图的能力。 要求:阅读实验题目、完成数据对象的创建及要求的数据操作,正确使用 DDL 命令 完成对应操作

【内容提要】1.基本表的建立:a)、建立一个“学生表student”,它由学号xh、姓名xm、性别xb、年龄nl、所在系xi五个属性组成,其中学号属性为主属性,并且其值是唯一的。b)、建立“课程course”包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键课程号。c)、建立“选课表sc”包括学号xh,课程号kch,成绩grade,要求建立主键及与student及sc表联接的外键。2.基本表的修改:a)、在选课表中增加一列“任课教师rkjs”。b)、删除选课表中rkis一列。c)、将student表的xm一列允许空值的属性更改成不允许为空,将列xm的长度由char(8)改为char(10)。d)、建立一个临时表,再将其删除。3.索引的建立与删除:a)、在学生表中以学生的姓名建立降序索引。b)、在课程表中以课程名建立升序,以学分建立降序索引。c)、删除以上索引。4.建立、删除和更新视图:a)、建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。CREATEVIEWC_StudentASSELECT Sno,Sname, Sage, SdeptFROMStudentsWHERESdept='数学WITH CHECK OPTIONb)、视图查询。在数学系的学生视图C_Student中找出年龄(Sage)小于20岁的学生姓名(Sname)和年龄(Sage)。2
2 【内容提要】 1. 基本表的建立: a)、建立一个“学生表 student”,它由学号 xh、姓名 xm、性别 xb、年龄 nl、所 在系 xi 五个属性组成,其中学号属性为主属性,并且其值是唯一的。 b)、建立“课程 course”包括课程号 kch,课程名称 kcmc,先修课程 xxkc,学分 xf,要求建立主键课程号。 c)、建立“选课表 sc”包括学号 xh,课程号 kch,成绩 grade,要求建立主键及与 student 及 sc 表联接的外键。 2. 基本表的修改: a)、在选课表中增加一列“任课教师 rkjs”。 b)、删除选课表中 rkjs 一列。 c)、将 student 表的 xm 一列允许空值的属性更改成不允许为空,将列 xm 的长度由 char(8)改为 char(10)。 d)、建立一个临时表,再将其删除。 3. 索引的建立与删除: a)、在学生表中以学生的姓名建立降序索引。 b)、在课程表中以课程名建立升序,以学分建立降序索引。 c)、删除以上索引。 4. 建立、删除和更新视图: a)、建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有数 学系的学生,视图的属性名为 Sno,Sname,Sage,Sdept。 CREATE VIEW C_Student AS SELECT Sno, Sname, Sage, Sdept FROM Students WHERE Sdept=’数学’ WITH CHECK OPTION b)、视图查询。 在数学系的学生视图 C_Student 中找出年龄(Sage)小于 20 岁的学生姓名(Sname)和 年龄(Sage)

SELECTSname,SageFROMC_StudentWHERE Sage<20;c)、更新视图。将数学系学生视图C_Student中学号为S05的学生姓名改为“黄海”。删除数学系学生视图C_Student中学号为“So9”的记录。【所需主要仪器设备】微型计算机一台(Pentium或以上)、SQLServer软件。实验三SQL基本表查询【实验类型】综合性【目的与要求】目的:熟练掌握查询语句的一般格式,熟练掌握连接、嵌套和集合查询的使用。独立完成基本的数据检索任务,并根据实际需求编写相应的SQL查询语句,提取、整合和展示所需的数据信息。要求:阅读实验题目、完成对基本表的数据检索,并对检索结果的正确性进行验证。【内容提要】1.查询STUDENT表中的所有信息、部分信息。注:*的作用。2:查询STUDENT表中计算机系学生的全部信息、查询STUDENT表中计算机系年龄在20岁以上的学生名单。3.查询选修了2号课程的学生名单。注:分别用连接查询、嵌套查询实现,并比较。4.查询每个学生的平均成绩和每一门课的平均成绩。注:集函数的使用、列别名的使用。5.查询没有选修2号课程的学生姓名。注:用相关子查询和不相关子查询两种方法实现。6.查询选修了全部课程的学生姓名。n
3 SELECT Sname, Sage FROM C_Student WHERE Sage<20; c)、更新视图。 将数学系学生视图 C_Student 中学号为 S05 的学生姓名改为“黄海”。 删除数学系学生视图 C_Student 中学号为“S09”的记录。 【所需主要仪器设备】 微型计算机一台(Pentium 或以上)、SQL Server 软件。 实验三 SQL 基本表查询 【实验类型】 综合性 【目的与要求】 目的:熟练掌握查询语句的一般格式,熟练掌握连接、嵌套和集合查询的使用。独 立完成基本的数据检索任务,并根据实际需求编写相应的 SQL 查询语句,提取、整合和 展示所需的数据信息。 要求:阅读实验题目、完成对基本表的数据检索,并对检索结果的正确性进行验证。 【内容提要】 1.查询 STUDENT 表中的所有信息、部分信息。 注:*的作用。 2.查询 STUDENT 表中计算机系学生的全部信息、查询 STUDENT 表中计算机系年龄 在 20 岁以上的学生名单。 3.查询选修了 2 号课程的学生名单。 注:分别用连接查询、嵌套查询实现,并比较。 4.查询每个学生的平均成绩和每一门课的平均成绩。 注:集函数的使用、列别名的使用。 5.查询没有选修 2 号课程的学生姓名。 注:用相关子查询和不相关子查询两种方法实现。 6.查询选修了全部课程的学生姓名

注:全称量词的实现。7.查询至少选修了1号和2号课程的学生名单。8.查询只选修了1号和2号课程的学生名单。9.查询选修了3门或3门以上课程的学生学号(Sno)。10.查询全部学生都选修的课程名。11.选了数据库和数学的学生名单。【所需主要仪器设备】微型计算机一台(Pentium或以上)、SQLServer软件。实验四数据控制(安全性和完整性)【实验类型】验证性【目的与要求】目的:理解SQLServer的用户与权限管理机制,通过企业管理器创建用户,并给定的用户分配权限,并掌握数据库完整性概念,实现实体、参照和自定义约束。要求:阅读实验题目、完成实验内容要求的操作,并进行安全性和完整性的验证。【内容提要】1.创建数据库ycudata,它包含两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),部门(部门号,名称,经理名,地址,电话号)。2:创建用户sqlaa,它对关系模式职工具有查询和删除权限。3.创建用户sqlbb,它对关系模式职工和部门具有所有的权限(所有权限的表达)。4.对该用户sgltcc授予查找职工关系模式,更新部门关系模式的权限,同时可以将该权限进行传播,并将权限传播给用户sqlaa。5.创建用户selectdd,它对关系模式职工修改表结构的权限。6.收回用户sglcc的相应权限,了解sqlaa的权限情况。7:创建角色rolel,它的权限是对部门关系模式进行查、插、改、删,将用户sqldc和sqlcc归于角色rolel,查看用户的权限。8.定义部门和职工关系模式的主键,外键,定义职工年龄不超过60岁,部门名称必须取值唯一。4
4 注:全称量词的实现。 7.查询至少选修了 1 号和 2 号课程的学生名单。 8.查询只选修了 1 号和 2 号课程的学生名单。 9.查询选修了 3 门或 3 门以上课程的学生学号(Sno)。 10.查询全部学生都选修的课程名。 11.选了数据库和数学的学生名单。 【所需主要仪器设备】 微型计算机一台(Pentium 或以上)、SQL Server 软件。 实验四 数据控制(安全性和完整性) 【实验类型】 验证性 【目的与要求】 目的:理解 SQL Server 的用户与权限管理机制,通过企业管理器创建用户,并给 定的用户分配权限,并掌握数据库完整性概念,实现实体、参照和自定义约束。 要求:阅读实验题目、完成实验内容要求的操作,并进行安全性和完整性的验证。 【内容提要】 1.创建数据库 ycudata,它包含两个关系模式:职工(职工号,姓名,年龄,职务, 工资,部门号),部门(部门号,名称,经理名,地址,电话号)。 2.创建用户 sqlaa,它对关系模式职工具有查询和删除权限。 3.创建用户 sqlbb,它对关系模式职工和部门具有所有的权限(所有权限的表达)。 4.对该用户 sqltcc 授予查找职工关系模式,更新部门关系模式的权限,同时可以 将该权限进行传播,并将权限传播给用户 sqlaa。 5.创建用户 selectdd,它对关系模式职工修改表结构的权限。 6.收回用户 sqlcc 的相应权限,了解 sqlaa 的权限情况。 7.创建角色 role1,它的权限是对部门关系模式进行查、插、改、删,将用户 sqldd 和 sqlcc 归于角色 role1,查看用户的权限。 8.定义部门和职工关系模式的主键,外键,定义职工年龄不超过 60 岁,部门名称 必须取值唯一

9.定义用户sqlee,具有从每个部门职工中查看最高工资,最低工资和平均工资的权力,但他不能查看每个人的工资。10.在对关系模式定义外键时,分别设置无行动和级连两种方式,并进行数据插入。【所需主要仪器设备】微型计算机一台(Pentium或以上)、SQLServer软件。实验五存储过程【实验类型】综合性【目的与要求】目的:掌握用户存储过程的创建,了解一些常用的系统存储过程,以及调用和删除过程,并熟悉使用存储过程来进行数据库应用程序的设计。要求:阅读实验题目、完成要求的存储过程的创建,并运行存储过程查看操作结果。【内容提要】1.基于学生一课程数据库创建一存储过程,用于检索数据库中某个专业学生的人数,带有一个输入参数,用于指定专业。create procedure pro_s @stu_sdept varchar(5)//这是带参数的过程,参数不用()括asselect count(*)as 人数from studentwhere sdept = @ stu_sdept。2.存储过程的执行。executepro_s实参//实参可以是变量,也可以是常量。3.基于学生-课程数据库创建一存储过程,该过程带有一个输入参数,一个输出参数。其中输入参数用于指定学生的学号,输出参数用于返回学生的平均成绩。createprocedurepro_stu@stu_sno char(6),@stu_avgfloat output//这个带output的是输出参数asselect@stu_avg=avg(grade)//将平均值给了变量
5 9.定义用户 sqlee,具有从每个部门职工中查看最高工资,最低工资和平均工资的 权力,但他不能查看每个人的工资。 10.在对关系模式定义外键时,分别设置无行动和级连两种方式,并进行数据插入。 【所需主要仪器设备】 微型计算机一台(Pentium 或以上)、SQL Server 软件。 实验五 存储过程 【实验类型】 综合性 【目的与要求】 目的:掌握用户存储过程的创建,了解一些常用的系统存储过程,以及调用和删除 过程,并熟悉使用存储过程来进行数据库应用程序的设计。 要求:阅读实验题目、完成要求的存储过程的创建,并运行存储过程查看操作结果。 【内容提要】 1.基于学生—课程数据库创建一存储过程,用于检索数据库中某个专业学生的人 数,带有一个输入参数,用于指定专业。 create procedure pro_s @stu_sdept varchar(5) //这是带参数的过程,参数不用()括 as select count(*) as 人数 from student where sdept = @ stu_sdept。 2.存储过程的执行。 execute pro_s 实参 //实参可以是变量,也可以是常量。 3.基于学生-课程数据库创建一存储过程,该过程带有一个输入参数,一个输出参 数。其中输入参数用于指定学生的学号,输出参数用于返回学生的平均成绩。 create procedure pro_stu @stu_sno char(6),@stu_avg float output //这个带 output 的是输出参数 as select @stu_avg = avg(grade) //将平均值给了变量

from student,scwherestudent.sno=sc.snoandstudent.sno=@stu_sno。4..存储过程的执行。declare@stuavgfloat//用于存放输出变量内容的executepro_stu“1000',@stuavgoutput//输出参数必须是变量select @stuavg//看结果。5.在pubs数据库中建立一个存储过程,用于检索数据库中某一价位的图书信息。参数有两个,用于指定图书价格的上下限。如果找到满足条件的图书,则返回0,否则返回1。createprocedurepro_title@pro minnpricemoney,@pro_maxpricemoneyeasifexists(select pricefromtitleswhere price>=@pro_minnpriceandprice<=@ pro_maxprice)return0elsereturn 16.存储过程的执行。executepro_title实参7.存储过程的删除。dropprocedurepro_title【所需主要仪器设备】微型计算机一台(Pentium或以上)、SQLServer软件。实验六数据库设计与实现【实验类型】设计性【目的与要求】6
6 from student,sc where student. sno = sc. sno and student.sno=@stu_sno。 4.存储过程的执行。 declare @stuavg float //用于存放输出变量内容的 execute pro_stu ‘1000’,@stuavg output// 输出参数必须是变量 select @stuavg //看结果。 5.在 pubs 数据库中建立一个存储过程,用于检索数据库中某一价位的图书信息。 参数有两个,用于指定图书价格的上下限。如果找到满足条件的图书,则返回 0,否则 返回 1。 create procedure pro_title @pro_minnprice money,@pro_maxprice moneye as if exists (select price from titles where price>=@ pro_minnprice and price<=@ pro_maxprice) return 0 else return 1 6.存储过程的执行。 execute pro_title 实参 7.存储过程的删除。 drop procedure pro_title 【所需主要仪器设备】 微型计算机一台(Pentium 或以上)、SQL Server 软件。 实验六 数据库设计与实现 【实验类型】 设计性 【目的与要求】

目的:熟悉数据库设计的各个阶段,完成数据库设计,数据模型建立,会使用powerdesigner工具实现阶段性设计的表达,并使用一种语言实现数据库的连接,完成数据的显示、修改、插入和删除。要求:阅读实验题目、完成数据库的设计,各阶段模型的转换,数据库的实现。【内容提要】1.选定具体应用环境,完成数据库需求分析,完成概念模型、逻辑模型的设计。2.根据数据库设计各个阶段得出的内容,在SQLServer环境中建立数据库和具体的数据对象。3.选择一种语言设计一个数据库应用系统,实现连接数据库,并且可以显示数据库中的数据信息。【所需主要仪器设备】微型计算机一台(Pentium或以上)、SQLServer软件。二、实验学时分配《数据库原理及应用》课程实验教学一览表实验所需主要仪器必做/选是否为开放序号实验项目名称实验类型备注学时实验设备做计算机一台是验证性必做1SQLServer安装与配置2基本表、索引与视图的计算机一台是22验证性必做定义、删除和修改计算机一台3是4综合性必做SQL基本表查询数据控制(安全性和完计算机一台是42验证性必做整性)计算机一台52是存储过程综合性必做计算机一台是64设计性必做数据库设计与实现制订:数学与信息技术学院(系)教研室:数字媒体技术教研室执笔人:杨秀荣审订人:韩瑞东
7 目的:熟悉数据库设计的各个阶段,完成数据库设计,数据模型建立,会使用 power designer 工具实现阶段性设计的表达,并使用一种语言实现数据库的连接,完成数据的 显示、修改、插入和删除。 要求:阅读实验题目、完成数据库的设计,各阶段模型的转换,数据库的实现。 【内容提要】 1.选定具体应用环境,完成数据库需求分析,完成概念模型、逻辑模型的设计。 2.根据数据库设计各个阶段得出的内容,在 SQL Server 环境中建立数据库和具体 的数据对象。 3.选择一种语言设计一个数据库应用系统,实现连接数据库,并且可以显示数据 库中的数据信息。 【所需主要仪器设备】 微型计算机一台(Pentium 或以上)、SQL Server 软件。 二、实验学时分配 《数据库原理及应用》课程实验教学一览表 序号 实验项目名称 实验 学时 实验类型 所需主要仪器 设备 必做/选 做 是否为开放 实验 备注 1 SQL Server 安装与配置 2 验证性 计算机一台 必做 是 2 基本表、索引与视图的 定义、删除和修改 2 验证性 计算机一台 必做 是 3 SQL 基本表查询 4 综合性 计算机一台 必做 是 4 数据控制(安全性和完 整性) 2 验证性 计算机一台 必做 是 5 存储过程 2 综合性 计算机一台 必做 是 6 数据库设计与实现 4 设计性 计算机一台 必做 是 制 订:数学与信息技术学院(系) 教研室:数字媒体技术教研室 执笔人:杨秀荣 审订人:韩瑞东