数据库实验指导书人力07.docx
《数据库实验指导书人力07.docx》由会员分享,可在线阅读,更多相关《数据库实验指导书人力07.docx(15页珍藏版)》请在冰豆网上搜索。
数据库实验指导书人力07
《数据库原理与应用》实验指导书
实验一SQLServer2000系统的安装及配置
1、实验目的
熟练掌握SQLServer2000系统的安装过程。
熟悉SQLServer2000的系统环境,了解SQLServer2000系统的相关服务及常用工具,主要是“查询分析器”和“企业管理器”。
2、实验工具
SQLServer2000
3、实验内容
1、安装SQLServer2000系统。
1)、安装MicrosoftSQLServer2000或SQLServer客户端管理工具和库的硬件要求。
硬件
最低要求
计算机
Pentium166MHz或更高。
内存(RAM)
至少64MB,建议128MB或更多。
根据经验,内存容量可以和数据容量保持1:
1的比例,这样可以更好的发挥其效能。
硬盘空间
需要约500MB的程序空间,以及预留500M的数据空间
2)、为使用MicrosoftSQLServer2000各种版本或组件而必须安装的操作系统。
SQLServer版本或组件
操作系统要求
企业版
MicrosoftWindowsNTServer4.0、MicrosoftWindowsNTServer4.0企业版、Windows2000Server、Windows2000AdvancedServer和Windows2000DataCenterServer。
(所有版本均需要安装IE5.0以上版本浏览器)
标准版
MicrosoftWindowsNTServer4.0、Windows2000Server、MicrosoftWindowsNTServer企业版、Windows2000AdvancedServer和Windows2000DataCenterServer。
个人版
MicrosoftWindowsMe、Windows98、WindowsNTWorkstation4.0、Windows2000Professional、MicrosoftWindowsNTServer4.0、Windows2000Server和所有更高级的Windows操作系统。
注:
SQLServer2000的某些功能要求在MicrosoftWindows2000Server以上的版本才能运行,因此在Windowsprofessional2000有些功能可能无法使用。
建议大家自己课后练习的时候安装Windows2000Server以上版本和SQLServer2000企业版,以获得更好的性能。
2、安装SQLServer2000:
将安装光盘放入CD-ROM,将自动弹出“SQLServer自动菜单”界面,如果没有自动弹出则选择光盘根目录下的autorun.exe,双击运行:
选择运行“安装SQLServer2000组件”进入安装组件界面,选择“安装数据库服务器”。
进入安装界面后,按照安装提示进行安装;一般需要人工进行干预的有:
●选择安装类型和安装路径:
安装类型有:
典型安装、最小安装、和自定义安装。
安装路径是指SQLServer的系统文件和数据文件的安装位置。
默认情况下“安装类型”是典型安装,“安装路径”是操作系统设定的“ProgramFiles”文件夹。
你可以自行改变,初次安装最好不要改变他,按默认情况使用;
●配置启动服务的帐号:
有两类用户帐号:
一类是与Windows操作系统的集成帐号,一类是混合帐号。
建议选择第一类帐号进行安装;
3、按装完毕,启动MSSQLServer2000服务。
4、使用“企业管理器”:
(1)了解企业管理器的界面、菜单结构以及各项功能;
(2)了解“数据库服务器”的属性配置;(3)了解“数据库”的属性配置;(4)初步了解数据库、表、视图、用户、安全管理,复制等概念;浏览pubs数据库结构。
使用查询分析器:
进入查询分析器,
(1)分析分析器与数据库的关系;
(2)怎样在分析器中选择不同的数据库;(3)怎样在分析器中查看数据库的结构;(4)查询分析器的初步使用:
在分析器中输入语句:
usepubs
select*fromauthors
运行观看结果
5、使用SQLServerEnterpriseManager工具创建登录帐号、用户帐号和角色。
4、实验报告
1、实验各项内容的实现过程。
2、实验结果分析。
3、查询分析器的作用是什么?
可以有几种启动查询分析器的方法?
实验二SQL数据库定义语言操作实验
1、实验目的
掌握创建数据库、设置数据库属性等技术;掌握系统提供的数据类型、使用SQL语言和各种工具创建表、创建索引、修改表结构和删除表的技术;掌握使用约束和规则以及外键实现关系的实体完整性和参照完整性。
2、实验工具
SQLServer2000
3、实验内容
1、创建数据库
要求:
创建了一个Employee数据库,该数据库的主数据文件逻辑名称为employee_data,物理文件名为Employee.mdf,初始大小为10MB,最大尺寸为50MB,增长速度为10%;数据库的日志文件逻辑名称为employee_log,物理文件名为Employee.ldf,初始大小为5MB,最大尺寸为25MB,增长速度为1MB。
2、创建表,要求:
使用SQl语句创建一个雇员信息表person,一个月薪表salary和一个部门表department。
所创建表的结构如下所示:
表1雇员信息表person
字段名
数据类型
字段长度
是否允许为空
说明
Pno
Char
6
Notnull
工人编号,主键
Pname
Varchar
10
Notnull
姓名
Sex
Char
2
Notnull
性别
Birthday
Datetime
8
Null
出生日期
Prof
Varchar
10
NotNull
职称
Deptno
Char
4
Notnull
部门代码,外键(参照department表)
表2月薪表salary
字段名
数据类型
字段长度
是否允许为空
说明
Pno
Char
6
Notnull
(工人编号、month),主键
Base
Dec
5
Null
基本工资(要求base>=800)
Bonus
Dec
5
Null
奖金(要求bonus>=200)
Month
Int
Notnull
月份
Fact
实发工资=基本工资+奖金
表3部门表department
字段名
数据类型
字段长度
是否允许为空
说明
Deptno
Char
4
Notnull
部门代码,主键
Dname
Varchar
10
NotNull
部门名称
●注:
以下的实验项目都采用此Employee数据库。
3、创建规则sex_rule并与sex列绑定,指定性别列的取值只能为男或者女。
4、分别定义Check约束base_check和bonus_check,要求salary表的base不小于800,bonus不小于200。
5、创建3个表之间的参照完整性约束,person的工人编号和salary的工人编号,以及person的部门代码和department的部门代码之间。
6、利用sql语句创建视图
要求:
在雇员信息表person基础上创建员工视图personview,其中包括工人编号,姓名,性别,职称和部门代码字段。
7、为表创建索引
要求:
(1)在雇员信息表Person的姓名列上创建一个唯一索引name_unique
(2)在月薪表salary上,去掉原有的主键约束,并在Pno列上创建聚簇索引pno_idx
(3)删除索引pno_idx。
8、打开企业管理器,练习使用企业管理器完成上述1-7的任务。
4、实验报告
1、实验各项内容实现的过程。
2、实验结果分析。
实验三SQL数据库操纵语言实验
1、实验目的
掌握在表中插入、修改、删除和检索的技术,掌握对表中数据的连接检索、子查询检索和分组子句检索技术,掌握合计函数的使用;掌握索引技术;掌握各种数据备份技术。
2、实验工具
SQLServer2000
3、实验内容
(1)向表中插入数据
要求:
按下表所示,向表person,salary,department中插入数据
表person中的数据
Pno
Pname
Sex
Birthday
Prof
Deptno
田林
男
1982-4-7
初级
001
郭达
男
1953-2-14
高级
001
王琳
女
1984-8-25
初级
002
王辉
男
1984-5-11
初级
002
罗大右
男
1968-12-10
高级
002
蔡琴
女
1978-4-20
中级
003
李艳
女
1960-5-14
高级
001
刘德华
男
1971-2-19
高级
003
黎明
男
1973-10-9
中级
002
表salary中的数据
Pno
Base
Bonus
Fact
Month
2100
500
=base+bonus
1
3000
600
1
2800
450
1
2500
340
1
3200
490
1
2700
600
1
4000
200
1
2800
350
1
2760
440
1
2400
600
2
2800
400
2
2860
350
2
2540
320
2
3200
480
2
2700
300
2
4000
250
2
2800
300
2
2760
480
2
2200
500
3
3100
400
3
2800
650
3
2500
540
3
3200
400
3
2700
680
3
4100
400
3
2000
330
3
2760
420
3
表department中数据
Deptno
Dname
001
营销部
002
财务部
003
人事部
004
采购部
(2)将职工编号为的员工3月份基本工资增加为3000,奖金增加到800。
(3)员工已经离开公司,将该员工的数据删除(基本信息和工资信息)
(4)向视图personview中插入一条记录(‘’,‘范伟’,‘男’,‘高级’,‘004’)
(5)将视图personview删除
(6)简单条件查询
✓查询person表中所有不重复的职称。
✓查询具有高级职称的女员工基本信息
✓查询职工中”刘”姓员工的基本信息
✓查询各部门的实发工资总额
(7)复杂条件查询
✓查询财务部和人事部员工的基本信息
✓查询平均工资高于3000的部门名和对应的平均工资。
✓查询1月份实发工资比平均实发工资高的员工姓名和实发工资额。
✓查询2月份实发工资比一月高的员工姓名。
✓利用sql语句将1,2,3月累积的员工的实发工资按降序排序
4、实验报告
1、实验各项内容实现的过程。
2、实验结果分析。
实验四SQLServer中的T-SQL语句实验
1、实验目的
T-SQL即Transact_SQL是SQLServer对标准SQL的扩充,通过本实验环节要求学生掌握用户自定义数据类型,流程控制,游标的使用以及存储过程的编写等。
2、实验工具
SQLServer2000
3、实验内容
1、自定义数据类型
要求:
通过T-SQL语句,自定义一个数据类型type_dno,为长度为10的字符类型,并用此数据类型重新定义部门表department的Dname属性列。
2、创建调用函数
要求:
创建一个函数check__pno用来检测指定的员工号是否存在,如存在返回1,否则返回-1。
调用check_pno,如果返回值等于1,则向salary表中插入一条该员工的工资记录。
3、创建和调用存储过程
(1)要求:
编写一个存储过程,实现根据员工的出生日期计算出其实际年龄。
调用该存储过程计算姓名为“刘德华”的员工年龄。
(2)要求:
编写一个存储过程,根据指定的职工号删除person表中的职工信息以及对应的工资信息。
4、游标和流程控制语言的使用(奖金补发)
要求:
使用游标和流程控制语言实现按比例补放奖金,如果员工实发工资额<=3000,则按3%补发;如果在3000~4000之间按2%补发;如果实发工资额>4000,按1.5%补发。
显示员工姓名和应补发的奖金额。
5、触发器的使用
(1)要求:
在department上创建一个触发器dep_update_tri,当更改部门号时同时更改表person种对应的部门号。
(2)要求:
在person表上创建一个触发器person_tri,当修改或删除职工纪录的同时修改或删除salary中对应的员工纪录。
4、实验报告
1、实验各项内容实现的过程。
2、实验结果分析。
实验五关系数据库的设计
1、.实验目的
1、立自己的数据库系统,根据实际情况的分析,构建数据库中的表;
2、用规范化理论分析关系模式的构成,运用数据依赖理论对关系模式进行分解;
3、对分解后的数据表表进行约束(实体完整性、参照完整性、用户定义完整性定义);建立表之间的联系。
2、实验工具
SQLServer2000
3、实验内容
1.建立自己的数据库
要求:
根据日常熟悉的某个应用,设计一个数据库,例如商店进销存,学生成绩管理,员工工资管理等。
针对该应用进行必要的调查和分析,并对调查所得的各种数据进行汇总,决定需要建立的数据表。
2.运用规范化理论,对所得到的关系模式进行分析和优化。
3.绘制对应的关系图。
要求:
定义主键和外键
4、实验报告
1、实验各项内容实现的过程。
2、实验结果分析。
实验六SQLServer的安全设置实验
1、实验目的
在理解数据库安全理论的基础上,掌握使用企业管理器和SQL语句在SQLServer中对用户帐号、角色以及对象授权进行管理。
2、实验工具
SQLServer2000
3、实验内容
1、查看默认的帐号和角色
要求:
查看当前数据库服务器有哪些登录帐号,查看数据库employee有哪些用户和数据库角色。
2、创建windows登录的帐号
要求:
基于windows组成员或者用户帐号创建登录帐号market\.
3、创建SQLServer登录的帐号
要求:
基于SQLServer创建登录的帐号,和
4、用户帐号设置
要求:
授权用户访问数据库employee
将数据库用户帐号guest填加到数据库employee中
5、角色管理
要求:
将用户填加到数据库创建者角色中。
将用户填加到employee数据库的db_owner角色中。
6、用户自定义角色
要求:
定义一个新的数据库角色managers,该角色由DBO帐号所有,然后将用户填加到managers角色中。
7、对象授权
要求:
授权给帐号创建数据库的权利,授权给角色manager创建数据表的权利。
授权给用户对表person进行插入删除和更新的权限;授权给角色manager对表salary进行删除插入和更新的权限。
4、实验报告
1、实验各项内容实现的过程。
2、实验结果分析。
实验七数据库的备份和恢复实验
1、实验目的
了解SQLServer数据库的备份和恢复,掌握使用企业管理器和使用SQL语句进行备份和恢复的方法。
2、实验工具
SQLServer2000
3、实验内容
1、用企业管理器备份和恢复数据库
要求:
(1)创建备份设备pubs_backup
在向导的帮助下对SQLServer2000的示例数据库pubs进行备份。
(2)删除pubs数据库中的employee表。
(3)将操作
(1)中制作的备份还原到pubs数据库中。
2、使用SQL语句备份和恢复数据库。
要求:
按照要求写出相应的语句,并在SQL查询分析器中执行:
(1)在SQLServer中添加名为nw_device的备份设备和存放日志文件的备份设备nw_devicelog。
(2)利用备份设备nw_devic对示例数据库Northwind进行备份,并将数据库的日志文件备份到nw_devicelog中。
(3)删除示例数据库Northwind的products表。
(4)将备份设备nw_devic中存储的数据还原到Northwind中。
(5)在Windows资源管理器中将与示例数据库pubs有关的两个磁盘文件复制到一个指定的文件夹中。
(6)在查询分析器中用DROPDATABASE语句将示例数据库pubs删除掉。
(7)在查询分析器中用系统存储过程sp_attach_db将操作
(1)中制作的数据库副本安装到SQLServer中。
4、实验报告
1、实验各项内容实现的过程。
2、实验结果分析。
实验八客户端访问数据库试验(选做)
1、实验目的
1.学会利用ADO对象编写数据库访问程序
2.学会采用C/S模式开发数据库应用的方法
2、实验工具
数据库系统为SqlServer2000,开发工具选择VisualBasic(Java、Delphi、C#或者PowerBuilder)等。
3、实验内容
系统结构说明:
通常,一个数据库应用系统是由前后3部分组合而成的:
前端程序、中间的数据库组件、后端的数据库。
如图所示:
目前多数的RAD工具都直接提供了数据库组件如VB中的ADO、VB.net中的ADO.net等,可以大大简化我们的开发工作。
本次实验要求完成以下内容:
1、设计一个窗体,显示employee数据库中的person表中指定部门号的员工记录,其中部门号通过文本框输入。
2、设计一个窗体,实现部门表的维护,包括部门的浏览,添加,修改,删除和更新等。
3、设计一个应用程序,实现工资数据的查询(要求:
通过指定员工姓名查询)、添加、删除和更新操作,工资数据的统计(要求:
能够按部门统计,按时间统计,按员工姓名统计)。
4、实验报告
1、实验各项内容实现的过程。
2、系统运行情况(系统运行的界面)
3、实验结果分析。