最新数据库实验报告word范文模板 21页Word下载.docx
- 文档编号:19261439
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:17
- 大小:25.12KB
最新数据库实验报告word范文模板 21页Word下载.docx
《最新数据库实验报告word范文模板 21页Word下载.docx》由会员分享,可在线阅读,更多相关《最新数据库实验报告word范文模板 21页Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
它将推动你在人生奋斗的道路上永往直前!
实验一SQLServer概述、数据库操作
一.实验目的
知道SQLServer201X的特性,SQLServer201X的体系结构,了解SQLServer201X的版本以及SQLServer201X的安装条件和卸载。
会对进行数据库进行基本操作。
理解在使用SQLServer进行数据库设计时所涉及的基本概念,知道创建SQLServer数据库所使用的方法,以及如何管理设计完的数据库,包括如何查看数据库信息,如何进行删除和修改。
二.实验原理
SQLServer201X是一个关系型数据库管理系统(RDBMS),它使用Transact-SQL语言在客户端计算机和SQLServer201X计算机之间发送请求。
RDBMS系统包括数据库、数据库引擎和用来管理RDBMS中数据和组件的一些应用程序。
RDBMS把数据组织成数据库中相应的行和列。
三.实验仪器
Windowsxp操作系统,MicrosoftSQLServer201X
四.实验方法及步骤
(1).使用企业管理器创建修改数据库。
①在D盘example文件夹下创建一个employee数据库,主文件名为employee_data.mdf,事务日志文件名为employee_log.ldf。
②将employee数据库的主文件的初始大小为2MB。
③主文件的增方式按10%增长,最大容量不限。
④日志文件初始大小1M,最大容量50M,每次增长量为2M。
⑤employee数据库创建完后,将该数据库添加一个日志文件,文件名为employee_log1,初始大小2MB,最大尺度20MB,每次增长量为1MB.⑥在employeee数据库中增加一个次数据文件employee_1,文件参数设置采用默认方式。
⑦使用存储过程查看该数据库的所有数据信息。
(2).使用T-SQL语句创建修改数据库
①创建一个active数据库,主数据文件的逻辑文件名为arch1,实际文件名为archda1.mdf,
事务日志文件的逻辑文件名为archlog1,实际文件名分别为archlog1.ldf,上述文件的初始容量均为5MB,最大容量均为50MB,递增量均为1MB。
②增加两个次数据文件和一个事务日志文件,两个次数据文件的逻辑文件名分别为arch2和arch3,实际文件名分别为archdat2.ndf和archdat3.ndf。
事务日志文件的逻辑文件名为archlog2,实际文件名为
archlog2.ldf。
上述文件的初始容量均为3MB,最大容量均为40MB,递增量均为10%。
③使用存储过程查看该数据库的日志文件所占用的空间情况。
④删除该数据库。
五.实验记录及数据处理
(1)利用企业管理器建立数据库并修改存储位置
(2)利用SQL语句建立数据库createdatabaseactiveonprimary
(name=arch1,
filename='
c:
\programfiles\MicrosoftSQLServer\mssql\data\archda1.mdf'
size=5MB,
maxsize=50MB,filegrowth=1MB)logon
(name=archlog1,
\programfiles\MicrosoftSQLServer\mssql\data\archlog1.ldf'
size=3MB,
maxsize=40MB,filegrowth=10%)
alterdatabaseactiveaddfile
(
name='
arch3'
filename=’archdat3.ndf’size=10mb,
filegrowth=1mb)
alterdatabaseactiveaddfile(
arch2'
filename=’archdat2.ndf’size=10mb,
六.误差分析及问题讨论
如何更改更改SQLServer服务的密码
1.在“开始”菜单上,选择“管理工具”,然后单击“服务”。
在“服务”中,找到并右键单击“SQLServer(MSSQLSERVER)”服务,然后单击“属性”。
2.在“属性”对话框的“登录”选项卡上,在“密码”和“确认密码”框中键入新密码。
3.必须重新启动服务才能保存所做更改。
在“常规”选项卡上的“服务状态”下,单击“停止”以停止服务。
4.在服务停止后,请单击“启动”以启动服务。
5.单击“确定”以保存所做更改。
实验二数据表操作
(1)掌握数据表建立的各种方法,理解表的约束与业务逻辑的关系。
(2)熟练将业务规则转化为表的约束。
(3)熟练掌握建立、编辑表的方法:
设置列属性、查阅数据、输入数据、增加删除列与记录等。
SQLServer中支持的表是关系模型中表的实现和具体化,它是相关联的行和列的集合,用来存储数据库中的所有数据,是数据库中最重要的对象。
关系型数据库中的表都是二维的,表的一列称为一个字段,每个字段都需要预先定义,如定义该字段的数据类型、数据长度等;
表的一行称为一个记录,用于存储具体的数据信息内容。
安装了Windows操作系统、SQLServer201X的运行、管理环境的计算机。
1.创建“学生”数据库,在该数据库中建立“学生信息”和“学生成绩”和课程数据表。
(1)在企业管理器中管理数据表
①创建“学生信息表”新表,结构如表4.10所示。
②设置列属性。
将学号设置为主键,设置“性别”默认值为“男”。
对表存盘为“学生信
操作步骤如下所示:
(2)用T_SQL语言创建数据表
②设置列属性
将课程号设为主键,设置“学分”默认值为0。
对表存盘为“课程表”。
查看创建是否正确。
Ifexists(selectnamefromsysobjectswherename='
课程表'
andtype='
U'
)
Droptable课程表Createtable课程表
(课程号intconstraintkey_课程primarykey,课程名称char(4)notnull,学分intdefault0,任课老师char(8))③修改课程表
●将课程名称的数据类型改为varchar(10)。
Altertable课程表
Altercolumn课程名称archar(10)notnull
●设置“姓名”列的标题属性为“任课教师”。
操作完成后存盘。
(3)编写“学生成绩表”新表,结构如表
4.12所示。
表4.12“学生成绩表”表结构①设置列属性
将学号设置为主键。
对表存盘为“学生成绩表”。
Ifexists(selectnamefromsysobjectswherename='
学生成绩表'
Droptable学生成绩表go
Createtable学生成绩表
(学号char(7)constraintkey_学号primarykey,课程号int,
班级archar(10),期中成绩int,期末成绩int,)②修改学生成绩表
●添加“平时成绩”列名数据类型int,“总成绩”列名数据类型int,总评列名数据类型为char(4)。
Altertable学生成绩表Altertable学生成绩表Altertable学生成绩表
Add总成绩intAdd平时成绩intAdd平时成绩char(4)
●将主键设置为学号和课程号,操作完成后存盘。
Altertable学生成绩表
Alter学号,课程号constraint组合primary(学号,姓名)(4)建立表间联系
三个表的结构创建正确后,将学生信息、课程、学生成绩建立表间关系如图4.28所示。
操作步骤如下:
(5)输入数据
(6)修改表中数据
Insert课程表
Values('
4009'
'
管理信息系统'
4'
罗江疆'
)Insertinto课程表(课程号,课程名称)Values('
4012'
数据库原理与应用'
②用T_SQL语言在学生成绩表修改:
期中成绩和期末成绩〉=90总评为优、期中成绩和期末成绩在70~89之间总评为良、期中成绩和期末成绩在60~69之间总评为及格。
update学生成绩表
Set总评=’优’where期中成绩>
=90and期末成绩>
=90update学生成绩表
Set总评=’良’where期中成绩between70and89and期末成绩between70and89update学生成绩表
Set总评=’及格’where期中成绩between60and69and期末成绩between60and69
③查看修改后的数据。
Select*from学生成绩表
(7)用系统存储过程查看上述3张表。
sp_help学生信息表sp_help课程表sp_help学生成绩表sp_depends学生信息表sp_depends课程表sp_depends学生成绩表
sp_spaeeused学生信息表sp_spaeeused课程表sp_spaeeused学生成绩表
(8)用第章的数据导入导出工具,将SQL学生中的3个表导出至Excel表中。
(1)将实训3的内容在SQLServer201X环境中调试成功,并将编写的程序调试、运行正确成功后,存入磁盘中。
(2)将实训中在企业管理器的操作,转换成在T-SQL编程语句操作,在T-SQL编程语句的操作转换成在企业管理器的操作,达到熟练掌握各种功能的操作目的。
(3)每次实训后,总结一下实训的重点内容和应注意的问题,并写成实训报告的形式上交。
通过实训了解SQLServer数据表的基本概念,学会了运用企业管理器和SQL语言建立、修改和管理表和运用系统存储过程查看表的属性并学会了对数据表的数据进行添加、修改、删除等操作。
实训三SQLServer查询
(1)熟练掌握用T-SQL语句查询所需的记录。
(2)熟练掌握用T-SQL语句编写的操作过程。
(3)熟练掌握查询中的列名,表示式的表示方法
(4)熟练掌握WHERE的条件表达式的用法。
(5)熟练掌握字符型字段的精确查询和模糊查询的表达语句。
(6)熟练掌握用T-SQL语句高级查询所需的记录。
(7)熟练掌握用T-SQL语句编写的操作过程。
(8)熟练掌握多表查询的表示方法
(9)熟练掌握集聚函数的使用特别是COUNT()和COUNT(*)用法。
(10)熟练掌握GROUPBY分组子句、HAVING子句用法。
(11)熟练掌握COMPUTE子句和COMPUTEBY用法。
在查询分析器中用T-SQL语句编写。
基本查询及其操作
1)在“学生信息”表中,查询前5条的所有记录。
selecttop5*from学生信息表
2)在“学生信息”表中,查询20%的所有记录。
selecttop20.00percent*from学生信息表
3)在“学生信息”表中,查询班级为金融1的学号,班级,性别和年龄记录。
select学号,班级,性别,年龄from学生信息表where班级='
金融'
4)在“学生信息”表中查询班级不能重复的记录。
selectdistinct班级from学生信息表
5)在“学生信息”表中查询学号和班级连接显示的记录并将合成的列名为“学号班级”。
select学号+班级学号班级from学生信息表
6)在“学生成绩”表中查询男生的期末成绩大于80的并平时成绩为20分的记录。
selectl.学号,姓名from学生成绩表l,学生信息表swherel.学号=s.学号and性别='
男'
and期末成绩>
80and平时成绩=20
7)在“学生成绩”表中查询期末成绩在70--80的所有记录。
select*from学生成绩表where期末成绩between70and80
8)在“学生信息”表中,查询学号为1003,1005,1007的班级,性别和年龄记录。
select班级,性别,年龄from学生信息表where学号
in('
1003'
1005'
1007'
9)在“学生信息”表中,查询姓李同学的所有记录。
select*from学生信息表where姓名like'
李%'
10)在“学生信息”表中,查询姓李或姓王同学的学号,姓名和班级的记录。
select学号,姓名,班级from学生信息表where姓名like'
or姓名like'
王%'
11)在“学生信息”表中,查询叫李某同学的所有记录。
李_'
12)在“学生信息”表中,查询除了姓李同学的所有记录。
select*from学生信息表where姓名notlike'
13)在“学生信息”表中,查询邮政编码不是以0开头,是以00082结尾的,长度为6位的所有记录。
select*from学生信息表where邮政编码notlike'
0%'
and邮政编码like'
_00082'
14)在“学生信息”表中,查询出生日期在1985年内出生的所有女生的所有记录。
select*from学生信息表where出生日期between'
1985/01/01'
and'
1985/12/31'
and性别='
女'
15)在“学生成绩”表中,查询期末成绩在前5名同学的学号,期中成绩和期末成绩的记录。
selecttop5学号,期中成绩,期末成绩from学生成绩表
16)在“学生成绩”表中,查询期中成绩在后8名同学的所有记录。
selecttop8*from学生成绩表orderby期中成绩
高级查询及其操作
1)现有一教学数据库的关系模式如下
A(a#,sname,age,sex)
Ab(a#,b#,grade)
B(b#,cname,teacher)
其中:
A表示教员表,它的各属性一次为学号、姓名、年龄和性别;
Ab示成绩表,它的各属性一次为学号、课程号和分数;
B表示课程表,它的各属性一次为课程号、课程名和任课老师。
在查询分析器中用T-SQL语句完成下列查询:
①检索刘老师所教授课程的课程号和课程名
select课程号,课程名from课程表where任课老师like'
刘%'
②检索年龄小于20岁的女学生的学号和姓名
select姓名,学号from学生信息表where性别='
and年龄<
20③检索学号为1005学生所学课程的课程名与任课老师。
Selectl.课程号,t.任课老师,课程名from课程表t,学生成绩表lwheret.课程号=l.课程号andl.学号='
④检索课程名称为‘英语泛读’的男学生的姓名、班级和课程号
selectt.课程号,s.姓名,s.班级,t.课程名from课程表t,学生信息表s,学生成绩表lwheret.课程号=l.课程号andl.学号=s.学号andt.课程名='
计算机网络'
and性别='
⑤检索至少选两门课程的班级
select班级from学生成绩表groupby班级havingCOUNT(课程号)>
=2⑥检索全部学生都选修的课程表中的课程号与课程名
select课程号,课程名from课程表wherenotexists(select*from学生成绩表wherenotexists(select*from学生信息表))
⑦检索选修课程“运筹学”的学生的学号
selects.学号from课程表t,学生信息表s,学生成绩表lwheret.课程号=l.课程号andl.学号=s.学号andt.课程名='
2)根据前面设计的学生成绩表的属性(学号,课程号,班级,期中成绩,期末成绩,总评成绩),和学生信息表的属性(学号,姓名,年龄,班级,电
话),课程(课程号,课程名称,任课教师,学分),完成下列查询语句:
①根据课程分组,统计期中成绩的平均分,和总分。
selectavg(期中成绩)as平均分,sum(期中成绩)as总分
from学生成绩表groupby课程号
②根据课程和学号分组,统计期末成绩的平均分,和期末成绩总分。
select学号,avg(期末成绩)as平均分,sum(期末成绩)as总分
from学生成绩表groupby学号
union
select课程号,avg(期末成绩)as平均分,sum(期末成绩)as总分
③根据课程分组,分组的条件是期末的平均成绩不低于60,统计期末成绩的平均分,和期末成绩总分
selectavg(期末成绩)as平均分,sum(期末成绩)as总分
havingavg(期末成绩)>
=60
④在学号901004—1010中,求平均年龄。
selectavg(年龄)as平均年龄from学生信息表
where学号between'
1011'
⑤列出年龄等于18岁的学生成绩的记录。
select*from学生成绩表where学号in(select学号from学生信息表where年龄=18)
⑥建立一个查询,使得如果在学生成绩表中期中成绩小于60分的行,则将课程表中的数据全部检索出来。
select*from课程表whereexists(select*from学生成绩表where期中成绩>
60)
⑦查询学生信息表中的学号和姓名,并使用子查询来获得该学生的期中成绩,期末成绩和总评成绩。
select学号,姓名,'
总成绩'
=(selectsum(期中成绩)as总成绩from学生成绩表where学生信息表.学号=学生成绩表.学号)from学生信息表
①select学号,姓名,班级,年龄,是否团员from学生信息表
②selecttop5*from学生信息表
③select学号,期中成绩,期末成绩,期中成绩*0.3,期末成绩*0.5+平时成绩as总成绩from学生成绩表
六.误差分析及问题讨论应该注意下列事项:
(1)SELECTINTO语句指定的表必须在当前数据库中不存在。
(2)系统默认的是创建临时表,既可以是局部表(在表前添加#),又可以是全
局表。
局部表只能在当前会话中可见;
全局表对所有会话都是可见的。
(3)如果需要利用SELECTINTO语句创建永久表,需要打开Selectinto/
bulkcopy选项。
(4)必须在SELECT语句中指定新创建表的字段名称。
这个表是局部的,即只能让局部用户可见。
因此,表的名称为临时表的字段包含员工姓名、员工编号、地址以及电话。
实验四视图与索引及数据完整性
(1)视图
1.创建和管理视图。
2.利用视图简化查询操作。
3.通过视图访问数据。
4.视图的优缺点。
(2)索引
1.索引的基本概念、作用、特点及分类。
2.使用企业管理器和T-SQL语句创建索引。
3.使用企业管理器和T-SQL语句查看、修改和删除索引。
(3)完整性
1.了解SQLServer数据的完整性的概念。
2.运用企业管理器和SQL语言建立、修改主键约束PRIMARYKEY、惟一性约束UNIQUE、惟一索引UNIQUEINDEX、标识IDENTITY等。
3.使用企业管理器管理规则,运用T-SQL语言创建、绑定、解除和删除规则。
4.使用企业管理器管理默认,运用T-SQL语言创建、绑定、解除和删除默认。
5.运用T-SQL语言创建自动编号的IDENTITY。
1.视图是从一个或多个表或视图中导出的表,其结构合数据是建立在对表的查询基础上的和表。
2.在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据。
3.数据完整性的含义包括以下内容:
①.数值的完整性,指数据类型与取值的正确性。
例如取值为整型还是字符型,取值范围是否合理,是否允许空值等。
②.表内数据不相互矛盾。
例如指定一个表中的某些数据不得重复。
③.表间数据不相互矛盾,指数据的关联性不被破坏。
例如学生库中表学生信息的学号应与学生成绩表中的学号一致。
Windowsxp操作系统,MicrosoftSQLServer201X四.实验方法及步骤
(1).使用企业管理器I.创建视图
II.创建索引
III.创建完整性规则
(2).使用T-SQL语句I.创建视图
I.创建视图
I.视图
利用基表“学生成绩”创建“练习视图”视图,要求的列名为:
课程号,班级,期中成绩,期末成绩,平时成绩,并运行结果。
II.索引
III.完整性规则
1.创建视图时注意的问题
视图的命名必须遵循标志符规则
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新数据库实验报告word范文模板 21页 最新 数据库 实验 报告 word 范文 模板 21