版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验(一): 熟练掌握SQL语言实验目的:熟悉上机环境,创建数据库,在数据库上建立关系模式,插入数据,进行相应的查询操作。实验内容:具体包括如下三部分。一、 熟悉上机环境。客户/服务器结构,数据库服务器在一台NT服务器上,同学们通过客户机(操作系统为Windows 2000)上安装的SQL Server客户端程序, 使用SQL Server数据库服务器。具体包括:1. 了解SQL Server 环境。鼠标点击开始,进入“Microsoft SQL Server®企业管理器”,点击SQL Server组下的数据库服务器(服务器名称为NEUC-201S(Windows NT)), 可以看
2、到服务器上的圆形标志变为绿色,说明客户端程序已与服务器连接成功。点击服务器(NEUC-201S(Windows NT))下的数据库,可以看到服务器上已建立的数据库,你可访问你有权访问的数据库,并进行相应的操作功能。因为,数据库服务器上建有许多数据库, 每个数据库都有一些合法的用户。2. 鼠标点击开始,进入“Microsoft SQL Server®查询分析器”,输入用户名和口令,进入SQL查询分析器。如:你登录的客户机为27号,那么请以用户名user27,口令为user27登录,登录后缺省连到数据库user27上,user27/user27是数据库user27的创建者,因此用户use
3、r27/ user27具有在数据库user27上创建表等一切权力。3. 在SQL查询分析器环境下,你就可进行SQL命令语句操作了。二、 在数据库useri上创建学生选课有关关系模式,并插入相应的数据,实现有关查询。1. 描述学生、课程情况的E-R图如下,请将其转化为用关系数据模型描述的关系模式学生课程选修学号姓名年龄所在系成绩课号课程名学时学分先行课号2. 在数据库中定义这些关系模式,并向基本表中插入如下数据:3. 插入相应的数据,试着插入重复的元组,结果如何? insert into Students values ('20133001','赵一','
4、21','计算机');insert into Students values ('20133002','赵二','22','电子');insert into Students values ('20133003','赵三','23','通信');insert into Students values ('20133004','赵四','24','自动化');insert into
5、Students values ('20133005','赵五','24','软件');insert into Students values ('20133006','赵六','21','数学');insert into Students values ('20133007','赵七','27','物联网');insert into Students values ('20133008'
6、,'赵八','25','生物');insert into Students values ('20133009','赵九','21','计算机');insert into Students values ('20133010','赵十','20','机械');4. 在已建立的关系模式之上(已插入一些数据)建立主键约束,参照约束和用户定义的约束(要求学生年龄不小于14岁,不大于35岁),如果约束不能建立,请分析原因,修改后
7、建立上述约束。5. 如果约束建立后,请试着插入重复元组,结果如何?试着插入重复元组,无法插入: 实验(二): 熟练掌握SQL语言用SQL完成下列查询1. 求选修了课程的学生的学号,要求:(1) 不使用distinct语句,消除重复元组,写出其SQL语句 (2) 使用distinct语句,消除重复元组,写出其SQL语句 (3) 如果该查询写成: select Student.Sno from Student, SC where Student.Sno=SC.Sno 请问该查询结果和上面哪个结果是相同的?2. 求开设的课程号、课程名、学时和学分,要求对查询结果的列重新命名。3. 求计算机系和数学系
8、的学生学号、姓名和年龄。4. 求不是数学系、计算机系的学生的情况,要求select后写*代替列出所有的列名。5. 求全体学生的信息,要求按年龄升序排列。6. 求计算机系年龄在1820岁之间的学生姓名和年龄。7. 求姓名是以老开头的计算机系学生。8. 求选修了C2课程的学生的学号、姓名、成绩。9. 求学号为95开头的学生的学号和所选修的课程的学分。10. 求选修C1课程且成绩为80分以上的学生的学号、姓名和成绩。11. 求计算机系每个学生的姓名,选修的课程名和成绩。12. 求每个学生的学号及平均成绩。13. 求男学生每一年龄组中超过1人的年龄组及人数。14. 求每一门课程的间接先行课号。15.
9、求选修了全部课程的学生的学号。实验(三):数据库的安全性和完整性实验目的:了解和使用安全子系统;进行完整性定义和检查。实验内容:具体包括如下三部分。一 熟练掌握SQL(续)1. 修改表Students,在其中加入一个字段性别sex char(1)2. 创建索引:在Students表的Sno上创建唯一聚簇索引, 在SC表的(Sno, Cno)上创建唯一索引. 查询Students表的内容, 记录的顺序有变化吗? 查询SC表的内容, 记录的顺序有变化吗?3. 创建视图§ 创建计算机系学生视图CS_Students,其中包括学号、年龄和性别。带with check opition子句不带w
10、ith check opition子句时各插入一计算机系学生记录, 通过视图查询插入的记录,结果如何?通过表Students查询插入的记录,查看所在系字段上的值?§ 创建一视图,表示学生的平均成绩,其中包括Sno,avgGrade。通过该视图插入一学生姓名和平均成绩,结果如何?通过该视图查找平均成绩在90分以上的学生的学号和平均成绩,结果又如何?二 了解和使用安全子系统1、将sql server的一合法帐户(user60)加入到你的数据库当中来,并给其授权,使之:具有创建表的权限具有对Students表查询的权限具有对Studetns表的年龄字段修改的权限2、用user60/user
11、60进入系统,完成权限验证:在Students表上,实现select * from Students在course表上,实现select * from courseupdate Studetns set Sage=Sage+1update Students set Sdept=CS3、你是数据库的dbo,你来查看dept表,结果如何?使用set user命令使自己成为user60后,查看dept表,结果如何?三 完整性定义和检查1、创建表Studetns,要求学生的年龄在16和25岁之间,并且所在系的缺省取值为CS在Studetns表上插入一学生记录(9921,cccc,MA,23,f)在St
12、udetns表上插入一学生记录(9922,ddd,MA,27,m)在Studetns表上插入一学生记录(9923,eeeee,21,m)在Studetns表上插入一学生记录(9922,ddd,MA,23,m)2、创建表course,要求课号作为主键在course表上插入一课程记录(c9,40,cname1,1)在course表上插入一课程记录(c9,40,cname2,1)在course表上插入一课程记录(null,25,canme3,2)3、修改表Studetns,指定学号为主键,然后插入一记录(9908,shang,CI,20)插入一记录(9908,shang,CI,20)插入一记录(,l
13、iang,CS,18)插入一记录(,an,CS,19)4、 创建sc表,要求表sc中的学号参照表Studetns中的学号,sc中的课号参照course中的课号。参照约束创建完成后,向这 三个表插入数据。先在sc表插入一个选课记录,看看有什么情况发生?先删除sc中的某个记录,看看有什么情况发生?将Studetns表中的学号9906改为9907,看看有什么情况发生?实验(四):事务的并发控制实验目的:通过实验了解实际系统中,三级封锁协议的实现方法和使用方法,体会加锁操作、死锁检测与解除。实验内容:具体分如下五部分。 说明:(1)Set transaction isolation level rea
14、d uncommittedread committedrepeatable readserializable分别对应隔离级0,1,2,3。(2)要求两人一组。1、 隔离级1(缺省)方式下体会两事务的并发执行结果。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表studentsl user1输入并执行下列语句begin transactionupdate table students set age=20+1 where sno=95001l user2输入并执行下列语句begin transaction sel
15、ect * from students where sno=950011) 观察发生的现象, user2的语句可以执行吗(是否可以读到别人没有提交的数据)? 2) user1输入并执行下列语句commit 2) 观察发生的现象, user2的语句执行了吗? 3) 加锁和解锁操作的完成者是数据库用户吗? l user2输入并执行下列语句commit2、 隔离级1(缺省)方式下体会两事务的并发执行结果。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表studentsl user2输入并执行下列语句begin tra
16、nsaction select age from students where sno=95001l user1输入并执行下列语句begin transactionupdate table students set age=20+1 where sno=950011) 观察发生的现象, user1的语句可以执行吗(是否可以修改别人正在读的数据)?l user2输入并执行下列语句select age from students where sno=950012) 观察发生的现象, user2的语句执行了吗? 结果如何(是否可重复读)? user2输入并执行下列语句commit l user1输入
17、并执行下列语句commit3、 在隔离级0方式下体会两事务的并发执行结果。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表studentsl user1输入并执行下列语句begin transactionupdate table students set age=20+1 where sno=95001l user2输入并执行下列语句begin transaction set transaction isolation level Read Uncommittedselect * from students w
18、here sno=950011) 观察发生的现象, user2的语句可以执行吗(是否可以读到别人没有提交的数据)? l user1输入并执行下列语句commitl user2输入并执行下列语句commit 4、 在隔离级1(缺省)方式下体会两事务的并发执行死锁情况。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以修改学生表students和学生选课表scl user1输入并执行下列语句begin transaction update table students set age=age+1l user2输入并执行下列语句begin transactionu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药具培训考核试题与答案解析
- 2026Fast芯片组行业资本运作模式与价值评估方法专项研究报告
- 2026隐私计算技术金融领域落地障碍分析报告
- 2026中国智能工业自动化系统市场现状供需分析及投资评估规划分析研究报告
- 2026中国制药装备行业市场发展趋势供需分析及投资评估规划分析研究报告
- 2026重庆校园LED屏与音视频会议系统集成手册
- 2026Fast芯片组行业市场工业互联网与智能制造研究报告
- 2026中国消防泵市场准入机制与投资风险评估报告
- 2026中国移动支付行业市场竞争技术应用用户规模投资评估规划报告
- 2026中国智能机器人产业园布局转型升级规划分析研究文献
- 2026福建福州古厝运营服务有限公司招聘5人考试模拟试题及答案详解
- 智慧医疗分级评价方法及标准(2025版)
- 2026湖南娄底涟源市明宏水利电力开发有限公司招聘12人笔试参考题库及答案详解
- 矿井灾害预防与应急处理全流程培训
- 北海市2025广西北海市招聘县级政府统计机构统计协管员(协统员)6人笔试历年参考题库典型考点附带答案详解
- 【中建】机电工程创优策划方案
- 视频监控系统工程监理实施细则
- 机电设备安装项目施工进度计划模板
- 2026年工业机器人公司销售业绩考核与提成核算管理制度
- GB/T 7582-2025声学听阈与年龄和性别关系的统计分布
- 机关食堂运营服务方案
评论
0/150
提交评论