1、数据库原理实验指导书带SQL语句数据库原理数据库原理与应用实验指导书实验一 SQLSERVER 2000的安装一、学时:学时二、实验目的了解安装SQL SERVER 2000的软、硬件环境以及安装过程;三、实验准备1SQL SERVER 2000安装盘;2. 计算机四、实验方法及步骤1. 了解SQL SERVER 2000的版本介绍SQL SERVER 2000不同版本的软件环境要求SQL Server 版本或组件操作系统要求企业版Microsoft Windows NT Server 、Microsoft Windows NT Server 企业版、Windows 2000 Server、W
2、indows 2000 Advanced Server 和 Windows 2000 Data Center Server。 注意:SQL Server 2000的某些功能必须要求在Microsoft Windows 2000 Server(任何版本)上运行。标准版Microsoft Windows NT Server 、Windows 2000 Server、Microsoft Windows NT Server 企业版、Windows 2000 Advanced Server 和 Windows 2000 Data Center Server。个人版Microsoft Windows Me
3、、Windows 98、Windows NT Workstation 、Windows 2000 Professional、Microsoft Windows NT Server 、Windows 2000 Server 和所有更高级的 Windows 操作系统。开发版Microsoft Windows NT Workstation 、Windows 2000 Professional和所有其它Windows NT和Windows 2000 操作系统。桌面引擎Microsoft Windows Me、Windows 98、Windows NT Workstation 、Windows 2000
4、 Professional、Microsoft Windows NT Server 、Windows 2000 Server 和所有更高级的 Windows 操作系统。仅客户端工具Microsoft Windows NT 、Windows 2000(所有版本)、Windows Me 和 Windows 98。仅连接Microsoft Windows NT 、Windows 2000(所有版本)、Windows Me、Windows 98 和 Windows 95。2. SQL SERVER 2000的安装(1)将企业版安装光盘插入光驱后,出现以下提示框。 注意:如果您的计算机的操作系统是win
5、dows 95以上,则选择“安装SQL Server 2000组件”,如果操作系统是windows 95,则需要选择“安装SQL Server 2000的先决条件”。 由于SQL Server 2000 的某些功能要求在Microsoft Windows 2000 Server以上的版本才能运行。因此安装Windows Server 2000(建议为Advanced版本),可以学习和使用到SQL Server 2000的更多功能,以及享受更好的性能。 本安装将在Windows 2000 Advanced Server操作系统作为示例,详细介绍安装SQL Server 2000企业版的过程。大家
6、清首先安装Windows 2000 Advanced Server。(2)选择 安装 SQL Server 2000 组件,出现下一个页面。 (3)选择 安装数据库服务器,出现如下界面:(4)选择下一步,出现如下界面:(5)选择本地计算机(默认)选项,选择下一步,出现如下界面:在 安装选择 窗口,选择 创建新的SQL Server实例.。对于初次安装的用户,应选用这一安装模式,不需要使用 高级选项 进行安装。 高级选项 中的内容均可在安装完成后进行调整。选择下一步,出现如下界面:(6)在 用户信息 窗口,输入用户信息,并接受软件许可证协议。(7)在 安装定义窗口,选择 服务器和客户端工具 选项
7、进行安装。我们需要将服务器和客户端同时安装,这样在同一台机器上,我们可以完成相关的所有操作,对于我们学习SQL Server很有用处。如果你已经在其它机器上安装了SQL Server,则可以只安装客户端工具,用于对其它机器上SQL Server的存取。(8)在 实例名 窗口,选择 默认 的实例名称。这时本SQL Server的名称将和Windows 2000服务器的名称相同。例如笔者的Windows服务器名称是 Darkroad,则SQL Server的名字也是 Darkroad。SQL Server 2000可以在同一台服务器上安装多个实例,也就是你可以重复安装几次。这时您就需要选择不同的实
8、例名称了。建议将实例名限制在 10 个字符之内。实例名会出现在各种 SQL Server 和系统工具的用户界面中,因此,名称越短越容易读取。另外,实例名称不能是 Default 或 MSSQLServer 以及SQL Server的保留关键字等。(9)在 安装类型 窗口,选择 典型 安装选项,并指定 目的文件夹。程序和数据文件的默认安装位置都是 C:Program FilesMicrosoft SQL Server。因为C盘是系统区、D盘是应用区,因此选择了D盘。(10)在 服务账号 窗口,请选择 对每个服务使用统一账户. 的选项。在 服务设置 处,选择 使用本地系统账户。如果需要 使用域用户
9、账户 的话,请将该用户添加至Windows Server的本机管理员组中。(11)在 身份验证模式 窗口,请选择 混合模式. 选项,并设置管理员sa账号的密码。如果您的目的只是为了学习的话,可以将该密码设置为空,以方便登录。如果是真正的应用系统,则千万需要设置和保管好该密码!如果需要更高的安全性,则可以选择 Windows身份验证模式 ,这时就只有Windows Server的本地用户和域用户才能使用SQL Server了。(12)在 选择许可模式 窗口,根据您购买的类型和数量输入(0表示没有数量限制)。 每客户表示同一时间最多允许的连接数,处理器许可证表示该服务器最多能安装多少个CPU。这里
10、选择了 每客户 并输入了100作为示例。(13)然后就是约10分钟左右的安装时间,单击完成系统安装完毕。 附:企业管理器和查询分析器的介绍企业管理器和查询分析器是SQLSERVER 2000 实验的主要工具,下面分别对这两类工具进行介绍:1、企业管理器:(1)按图所示找到SQLSERVER 2000 中的企业管理器;(2)用鼠标单击企业管理器菜单项,进入企业管理器管理界面: 根据图形界面,可进行数据库、表等的管理。2、查询分析器:所有的SQL语句操作都在查询分析器中运行,对查询分析器的使用要熟练掌握。(1)按图所示找到SQLSERVER 2000 中的查询分析器;(2)用鼠标单击查询分析器菜单
11、项,进入查询分析器界面:(3)若以Windows身份验证进入,可直接点击确定;若以SQL server 身份验证,可输入登陆用户名及登陆密码;sa是超级用户;身份验证通过后,可进入查询分析器界面如下:在查询分析器界面中,左边是数据库构成对象;右边分上下两部分:上面部分是查询分析器的SQL语句编辑部分,实验中的SQL语句在此部分进行编辑;下边部分是SQL语句的执行结果区域,SQL语句的执行结果在此部分显示。查询分析器的使用注意以下问题:(a)SQL语句所作的操作都是基于当前数据库的,进入界面的默认数据库是master数据库,如不在 master数据上操作,请在界面上部切换到你要操作的数据库。(b
12、)SQL语句执行时,用鼠标点击界面工具条中的绿色箭头;语句执行完毕后结果显示在界面右部的下面的区域。(c)SQL语句的执行是从第1句开始执行,为了仅执行部分SQL语句,可采用两重方法: 第一是用鼠标选种执行的部分,然后点击绿色箭头进行执行; 第二是把不执行的SQL语句用注释符号屏蔽掉。注释符号有两种。-符号是行注释,仅注释1 行;/* */ 是多行内容注释,把不执行的语句放在/*与*/之间。(d)SQL语句可保存在磁盘上。实验二 数据库及表的定义一、学时:4学时二、实验目的熟悉和掌握数据库的创建和连接方法;熟悉和掌握数据库表的建立、修改和删除;加深对表的实体完整性、参照完整性和用户自定义完整性
13、的理解;三、实验准备1、熟悉SQL SERVER 工作环境;2、复习有关表的建立、修改和删除的SQL语言命令;四、实验内容在以下实验中,使用学生-课程数据库,用SQL语句描述学生的基本信息、课程的基本信息及学生选修课程的信息。1、创建学生-课程数据库(student) create database student2、创建学生关系表S ;学号姓名性别年龄所在系SnoSnameSsexSagesdept use studentcreate table s( sno char(8) not null, Sname char(8) not null, Ssex char(2), Sage int ,
14、 Sdept char(30)3、创建课程关系表C ;课程号课程名先行课学分CnoCnameCpnoccredituse studentcreate table c( cno char(3) not null, cname char(30) not null, cpno char(3), ccredit decimal)4、创建课程关系表SC ;学号课程号成绩SnoCnogradeuse studentcreate table sc( sno char(8) not null, cno char(3) not null, grade decimal)5、删除表S的“年龄” 属性列;use st
15、udentalter table s drop column Sage6、增加表S的“年龄” 属性列;use studentalter table s add Sage int7、增加表的其他属性列;8、删除表的其他属性列;9、在表S上,按Sno属性列的唯一值方式建立索引; use studentCreate unique index s on s(sno asc)删除此索引:use studentdrop index 10、在表c上,按cno属性列的唯一值方式建立索引;use studentCreate unique index c on c(cno asc)11、在表SC上,按sno、cn
16、o属性列建立索引;use studentCreate unique index sc on sc(sno asc ,cno desc)12、更改表sc的属性列grade的类型为numeric ; use studentalter table sc alter column grade numeric13、保存上面操作的SQL语句到文件中; 点击菜单文件=保存 或另存为14、删除表; Drop table sDrop table cDrop table sc15、删除数据库; use masterdrop database student实验三 数据插入、更新、与删除一、学时:学时二、实验目的熟
17、悉和掌握数据表中数据的插入、修改、删除操作和命令的使用;加深理解表的定义和数据更新的作用三、实验准备1、建立数据库student、表S、C、SC以及索引2、复习对表中数据的插入、修改和删除的SQL语言命令;四、实验内容1、用SQL语句将适量数据分别插入表S、C、SC; Insert into s(sno,sname,ssex,sage,sdept) Values (,李勇,男,20,cs) Insert into s(sno,sname,ssex,sage,sdept) Values (,刘晨,女,19,cs) Insert into s(sno,sname,ssex,sage,sdept)
18、Values (,王敏,女,18,ma) Insert into s(sno,sname,ssex,sage,sdept) Values (,张立,男,19,is) . Insert into c(cno,cname,cpno,ccredit) Values (1,数据库,5,4) Insert into c(cno,cname,cpno,ccredit) Values (2,数学,null,2) Insert into c(cno,cname,cpno,ccredit) Values (3,信息系统,1,4) Insert into c(cno,cname,cpno,ccredit) Val
19、ues (4,操作系统,6,3) Insert into c(cno,cname,cpno,ccredit) Values (5,数据结构,7,4)Insert into c(cno,cname,cpno,ccredit) Values (6,数据处理,null,2)Insert into c(cno,cname,cpno,ccredit) Values (7,pascal语言,6,4). Insert into sc(sno,cno,grade) Values (,1,92) Insert into sc(sno,cno,grade) Values (,2,85) Insert into s
20、c(sno,cno,grade) Values (,3,88) Insert into sc(sno,cno,grade) Values (,2,90) Insert into sc(sno,cno,grade) Values (,3,80).2、求各系学生的平均成绩;use studentselect sdept ,avg(grade)from s,scwhere =group by sdept3、将“CS”系全体学生的成绩置零;use studentupdate scset grade=0from s,scwhere = and =CS4、删除“CS”系全体学生的选课记录;use stud
21、entDELETE CFROM S,C,SCWHERE = AND = and =CS5、删除学号为“20080001”的相关信息;use student delete s where sno=delete sc where sno=6、将s表中学号为“20080002”的学生的学号修改为“S002”; use student update sset sno=s002where sno=7、把平均成绩大于80分的男同学的学号和平均成绩存入另一个表S_Grade(Sno,AVG_Grade); use studentcreate table S_Grade( sno char(8) not nu
22、ll, AVG_Grade decimal)use studentinsert S_Grade(sno,AVG_Grade)select sno ,avg(grade) from scgroup by sno8、把选修了课程名为“数据结构”的学生的成绩提高10%;use studentupdate scset grade = grade * from c,scwhere = and =数据结构9、把选修了“2”号课程,且成绩低于该门课程的平均成绩的学生的成绩提高5%;use studentupdate scset grade = grade * from scwhere =2 and grad
23、e (select avg(grade) from sc where =2 )10、把选修了“2”号课程,且成绩低于该门课程的平均成绩的学生成绩删除掉;use studentdelete scfrom scwhere =2 and grade (select avg(grade) from sc where =2 )实验四 数据查询一、学时:4学时二、实验目的熟悉和掌握对数据表中数据的查询操作和SQL命令的使用,学会灵活熟练地使用SQL 语句的各种形式;三、实验准备1、熟悉SQL SERVER 工作环境;2、复习对表中数据查询的SQL语言命令;四、实验内容1、根据实验二、三建立的SQL语句,建
24、立相关的数据库、表及插入相关信息2、查询学生的基本信息; use studentselect * from s3、查询“CS”系学生的基本信息; use studentselect * from s where sdept=cs4、查询“CS”系学生年龄不在19到21之间的学生的学号、姓名;use studentselect sno,sname from swhere sdept=cs and ( sage 21 )5、找出最大年龄; use studentselect max(sage) from s6、找出“CS”系年龄最大的学生,显示其学号、姓名; select sno , sname
25、from swhere sdept=cs and sage=( select max(sage) from s where sdept=cs )7、找出各系年龄最大的学生的年龄; select sdept, max(sage) from s Group by sdept8、统计“CS”系学生的人数;9、统计各系学生的人数,结果按升序排列;10、按系统计各系学生的平均年龄,结果按降序排列;11、查询每门课程的课程名;12、查询无先修课的课程的课程名和学时数;13、统计无先修课的课程的学时总数;14、统计每位学生选修课程的门数、学分及其平均成绩;15、统计选修每门课程的学生人数及各门课程的平均成绩
26、;16、找出平均成绩在85分以上的学生,结果按系分组,并按平均成绩的升序排列;17、查询选修了“1”或“2”号课程的学生学号和姓名;18、查询选修了“1”和“2”号课程的学生学号和姓名;19、查询选修了课程名为“数据库系统”且成绩在60分以下的学生的学号、姓名和成绩;20、查询每位学生选修了课程的学生信息(显示:学号,姓名,课程号,课程名,成绩);21、查询没有选修课程的学生的基本信息;22、查询选修了3门以上课程的学生学号;23、查询选修课程成绩至少有一门在80分以上的学生学号;24、查询选修课程成绩均在80分以上的学生学号;25、查询选修课程平均成绩在80分以上的学生学号;实验五 视图的定
27、义和使用一、学时:2学时二、实验目的熟悉掌握对数据表中视图的定义操作和SQL命令的使用;熟悉掌握对数据表中视图的查询操作和SQL命令的使用;熟悉掌握对数据表中视图的更新操作和SQL命令的使用,并注意视图更新与基本表更新的区别与联系;学习灵活熟练的进行视图的操作,认识视图的作用;三、实验准备1、熟悉SQL SERVER 工作环境;2、复习有关视图操作的SQL语言命令;四、实验内容以S、C、SC表为基础完成以下视图定义及使用1、定义“IS”系学生基本情况视图V_IS 并查询结果;2、将S,C,SC表中学生的学号,姓名,课程号,课程名,成绩定义为视图V_S_C_G并查询结果;3、将各系学生人数,平均
28、年龄定义为视图V_NUM_AVG并查询结果;4、定义一个反映学生出生年份的视图V_YEAR并查询结果;5、将各位学生选修课程的门数及平均成绩定义为视图V_AVG_S_G并查询结果;6、将各门课程的选修人数及平均成绩定义为视图V_AVG_C_G并查询结果;7、查询平均成绩为90分以上的学生学号、姓名和成绩;8、查询各课成绩均大于平均成绩的学生学号、姓名、课程和成绩;9、按系统计各系平均成绩在80分以上的人数,结果按降序排列;10、通过视图V_IS,分别将学号为“S1”和“S4”的学生姓名更改为“S1_MMM”,”S4_MMM” 并查询结果;11、通过视图V_IS,新增加一个学生记录 (S12,Y
29、AN XI,19,IS),并查询结果;12、通过视图V_IS,新增加一个学生记录 (S13,YAN XI,19,MA),并查询结果;13、通过视图V_IS,删除学号为“S12”和“S3”的学生信息,并查询结果;14、要通过视图V_S_C_G,将学号为“S12”的姓名改为“S12_MMM”,是否可以实现15、要通过视图V_AVG_S_G,将学号为“S1”的平均成绩改为90分,是否可以实现实验六 数据完整性一、学时:2学时二、实验目的熟悉和掌握使用SQL查询分析器用PRIMARY KEY、CHECK、FOREIGN KEYREFERENCES、NOT NULL、UNIQUE等关键字验证SQL SERVER 2000的实体完整性、参照完整性及用户定义完整性。三、实验准备1、熟悉SQL SERVER 工作环境;2、复习有关建表操作的SQL语言命令;四、实验内容1、利用SQL查询分析器用PRIMARY
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1