数据库原理实验指导书-参考答案.doc
《数据库原理实验指导书-参考答案.doc》由会员分享,可在线阅读,更多相关《数据库原理实验指导书-参考答案.doc(34页珍藏版)》请在课桌文档上搜索。
1、数据库原理与应用实验指导/学年 第学期姓 名:_学 号:_班 级:_指导教师:_实验一 SQL Server使用初步一、实验目的1、熟悉SQL Server2000的组成与基本功能。2、掌握SQL Server2000的登录与注册。3、掌握SQL Server2000企业管理器的使用方法。4、熟悉查询分析器的基本使用。二、实验预习1、什么是数据库管理系统DBMS?你所知道的DBMS有哪些?2、SQL Server 2000(2005)的安装步骤?三、实验容和要求1、注册服务器基本步骤:(1)打开企业管理器(2)右击SQL Server组新建SQL Server注册(3)添加可用的服务器(实际数
2、据库服务器的名称或IP地址)(4)选择身份验证模式(选“系统管理员分配给我的登录信息”)(5)输入正确的登录名和密码(6)选择SQL Server组(选“在现有的SQL Server组中添加SQL Server”)(7)完成注册若注册成功,则显示注册成功的信息。2、连接SQL Server服务器(1)右键单击上面注册的数据库服务器,选择连接,建立与数据库服务器的连接。观察连接后服务器图标的变化;(2)右键单击选择编辑SQL Server注册属性,观察已注册数据库服务器的属性信息;(3)右键单击选择删除SQL Server注册。为保证数据库的安全性,使用完毕自己的数据库后,可采取删除的方式,断开
3、与数据库的连接;(4)重复注册服务器的步骤,再次建立与数据库的连接;3、熟悉企业管理器(1)单击建立的服务器连接,观察服务器的7个项目,写出它们的名称。通过查看联机帮助,总结7个项目的基本功能。(2)单击数据库,观察Northwind数据库下的11个项目,写出项目名称,通过联机帮助了解它们的基本功能。(3)查看Northwind的表项目,单击表,观察表的名称、所有者、类型以与创建日期。回答: 这些表的所有者有哪几种? 这些表的类型有哪几种? 选择表Employees,在右键菜单中选择打开表-返回所有行,观察表中的数据,说出这些数据的实际含义。观察其他用户类型的表,你还能说出它们数据的实际含义吗
4、?(4)查看Northwind的视图项目,单击视图,观察视图的名称、所有者、类型以与创建日期。选择视图Product Sales for 1997,同上面观察表中数据的方法一样,观察视图中的数据,说出这些数据的意义。(5)查看Northwind的用户项目,单击用户。回答: 有哪类用户?查看它们的属性对话框,它们的角色和权限是否相同? 通过联机帮助,写出dbo、Guest用户的区别。(6)查看Northwind的角色项目,单击角色。回答: 有哪些角色类型?通过查看联机帮助,写出它们各自的含义和作用。(7)查看Northwind的安全性项目,单击项目中的登录,观察不同的登录名称、类型、服务器访问、
5、默认数据库,找到你自己的登录名称,右键单击打开属性对话框,观察对话框中的设置,写出登录属性对话框中的设置作用。4、熟悉查询分析器(1)打开查询分析器。基本步骤: 单击注册的数据库服务器,确定服务器已经连接; 在主菜单“工具”中选择“SQL查询分析器”; 在打开的查询分析器窗口中,左侧的对象浏览器为注册的服务器,在工具栏的数据库选择中选择Northwind数据库为当前数据库;右侧窗口为查询窗口。(2)分别在查询窗口中输入如下查询语句,观察查询结果,写出结果的数据记录个数:查询语句1:SELECT *FROM ShippersORDER BY CompanyName结果记录数:查询语句2:SELE
6、CT FirstName, HomePhoneFROM Northwind.dbo.EmployeesORDER BY FirstName ASC结果记录数:查询语句3:SELECT ROUND( (UnitPrice * .9), 2) AS DiscountPriceFROM ProductsWHERE ProductID = 58结果记录数:查询语句4:SELECT OrderID, DATEDIFF(dd, ShippedDate, GETDATE() ) AS DaysSinceShippedFROM Northwind.dbo.OrdersWHERE ShippedDate IS
7、NOT NULL结果记录数:查询语句5:SELECT ProductID, ProductNameFROM Northwind.dbo.ProductsWHERE CategoryID = 1 OR CategoryID = 4 OR CategoryID = 5结果记录数:四、实验小结五、评阅成绩实验预习20%实验过程20%实验结果30%实验报告30%总成绩实验二 数据定义一、实验目的1、掌握SQL数据定义功能:数据库定义、表的定义、索引定义。2、掌握利用企业管理器和SQL语句定义表、索引的方法。二、实验预习1、SQL中基本表定义语句格式:2、SQL中修改基本表语句格式:三、实验容和要求1、
8、在企业管理器中,利用菜单操作的方式在各自的数据库中建立如下四个基本表:(1)供应商表S:列名说明数据类型约束SNO供应商号CHAR(6)PRIMARY KEYSNAME供应商名VARCHAR(20)NOT NULLSTATUS供应商状态VARCHAR(50)CITY所在城市VARCHAR(50)(2)零件表P:列名说明数据类型约束PNO零件号CHAR(6)PRIMARY KEYPNAME零件名VARCHAR(20)NOT NULLCOLOR颜色CHAR(2)WEIGHT重量NUMERIC(9,2)CHECK(WEIGHT0 AND WEIGHT=15 and Sage0),semster sm
9、allint check(semster 0),period smallint check(period0)(3)选课表Sc:列名说明数据类型约束SNO学号CHAR(7)主码,引用Student的外码CNO课程号CHAR(10)主码,引用Course的外码GRADE成绩SMALLINT大于0语句:CREATE TABLE SC(Sno char(7) , Cno char(10),Grade smallint check(grade=0), PRIMARY KEY (Sno,Cno),FOREIGN KEY (Cno) REFERENCES Course(Cno),FOREIGN KEY (S
10、no) REFERENCES Student(Sno)3、利用SQL语句对表结构进行修改。(1)为零件表P增加一个规格(GUIGE)列,数据类型为字符,长度50;Alter Table P Add GUIGE char(50)(2)修改课程表Course的CNAME属性列的类型为VARCHAR(30);Alter Table Course Alter Column CNAME varchar(30)(3)为供应情况表SPJ添加参照完整性约束;SPJ的SNO列参照S表SNO列Alter Table SPJ Add Foreign Key (SNO) References S(SNO)SPJ的PN
11、O列参照P表PNO列Alter Table SPJ Add Foreign Key (PNO) References P(PNO)SPJ的JNO列参照J表JNO列Alter Table SPJ Add Foreign Key (JNO) References J(JNO)(4)删除零件表P的规格(GUIGE)列Alter Table P Drop Column GUIGE4、利用企业管理器向表中添加数据(1)供应商表S:SNOSNAMESTATUSCITYS1精益20S2盛锡10继续往表中增加一条记录:四个字段的数据分别是S1,红,30,,会出现什么情况?为什么?(2)零件表P:PNOPNAM
12、ECOLORWEIGHTP1螺母红12P2螺栓绿17P3螺丝刀蓝105.5是否能够正常输入三条数据?如果否,问题出在哪里,为什么?(3)工程项目表J:JNOJNAMECITYJ1一汽J2半导体厂J3第三条记录是否能够正常输入,若否,会出现什么问题,为什么?(4)供应情况表SPJ:SN0PNOJNOQTYS1P1J1200S1P1J3S2P2J4输入过程中是否会遇到问题,若有,出在哪,为什么?四、实验小结五、评阅成绩实验预习20%实验过程20%实验结果30%实验报告30%总成绩实验三 数据查询一、实验目的1、掌握查询语句的基本组成和使用方法2、掌握常用查询技巧二、实验预习1、SQL中查询语句格式
13、:2、连接查询有哪些不同的连接方式?有什么特点。三、实验容和要求1、按照下表中的容,在企业管理器中为数据库表输入相应的数据。学生表:StudentSnoSnameSsexSageSdept9512101勇男19计算机系9512103王敏女20计算机系9521101莉女22信息系9521102吴宾男21信息系9521103海男20信息系9531101钱小平女18数学系9531102王大力男19数学系课程表:CourseCnoCnameCcreditSemsterPeriodC01计算机导论313C02VB434C03计算机网络474C04数据库基础664C05高等数学818选课表:SCSnoCn
14、oGrade9512101C03959512103C03519512101C05809512103C05609521101C05729521102C05809521103C05459531101C05819531102C05949512101C01NULL9531102C01NULL9512101C02879512101C04762、完成以下查询(1)查询全体学生的信息。select * from student(2)查询“信息系”学生的学号,和出生年份。select Sno,Sname,2009-Sage as Birthyear from student where Sdept=信息系(3
15、)查询考试不与格的学生的学号。select Distinct Sno from SC where Grade60(4)查询无考试成绩的学生的学号和相应的课程号。select Sno,Cno from SC where Grade is null(5)将学生按年龄升序排序。select * from student order by Sage asc(6)查询选修了课程的学生的学号和。Select Sno,Sname from Student Where Sno in (Select Sno From Sc)或:select distinct student.Sno,Sname from stu
16、dent,SC where student.Sno=SC.Sno (7)查询年龄在20-23岁之间的学生的,系,年龄。select Sname,Sage,Sdept from student where Sage between 20 and 23(8)查询同时选修了“计算机导论”,“高等数学”课程的学生的学号,。select student.Sno,Sname from student where NOT EXISTS( select* from course where Cname in(高等数学,计算机导论) AND NOT EXISTS(select* from SC where Sn
17、o=student.Sno and Cno=courseo)或:select student.Sno,Sname from student,sc,Course where student.sno=sc.sno and sco=courseo andame=高等数学 and student.sno in (select sno from sc whereo=(selecto from course whereame=计算机导论)或:select student.Sno,Sname from student where sno in (select sno from sc whereo=(sele
18、cto from course whereame=高等数学) and sno in (select sno from sc whereo=(selecto from course whereame=计算机导论)(9)查询姓“”的学生的基本信息。select * from student where Sname like %(10)查询“95211”班学生的选课情况,要求输出学号,课程名,成绩,按照学号升序排序。select student.Sno,Sname,Cname,Grade from student,SC,course where student.Sno=SC.Sno and cour
19、seo=SCo and student.Sno like 95211% order by student.Sno或:select student.Sno,Sname,Cname,Grade from student,SC,course where student.Sno=SC.Sno and courseo=SCo and left(student.sno,5)= 95211 order by 1(11)查询选修了课程的学生的总人数。select count(distinct sno) from SC(12)查询选修了“C05”课程的的学生成绩单,要求输出学号,成绩,结果按班级升序,成绩降序排
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 实验 指导书 参考答案
链接地址:https://www.desk33.com/p-6045.html