ImageVerifierCode 换一换
格式:DOC , 页数:43 ,大小:3.99MB ,
资源ID:4521563      下载积分:14 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4521563.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(东北大学数据库实验报告2016.doc)为本站上传会员【精****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

东北大学数据库实验报告2016.doc

1、东北大学数据库实验报告2016实验(一): 熟练掌握SQL语言实验目的:熟悉上机环境,创建数据库,在数据库上建立关系模式,插入数据,进行相应的查询操作。实验内容:具体包括如下三部分。一、 熟悉上机环境。客户/服务器结构,数据库服务器在一台NT服务器上,同学们通过客户机(操作系统为Windows 2000)上安装的SQL Server客户端程序, 使用SQL Server数据库服务器。具体包括:1. 了解SQL Server 环境。鼠标点击开始,进入“Microsoft SQL Server企业管理器”,点击SQL Server组下的数据库服务器(服务器名称为NEUC-201S(Windows

2、NT)), 可以看到服务器上的圆形标志变为绿色,说明客户端程序已与服务器连接成功。点击服务器(NEUC-201S(Windows NT))下的数据库,可以看到服务器上已建立的数据库,你可访问你有权访问的数据库,并进行相应的操作功能。因为,数据库服务器上建有许多数据库, 每个数据库都有一些合法的用户。2. 鼠标点击开始,进入“Microsoft SQL Server查询分析器”,输入用户名和口令,进入SQL查询分析器。如:你登录的客户机为27号,那么请以用户名user27,口令为user27登录,登录后缺省连到数据库user27上,user27/user27是数据库user27的创建者,因此用户

3、user27/ user27具有在数据库user27上创建表等一切权力。3. 在SQL查询分析器环境下,你就可进行SQL命令语句操作了。二、 在数据库useri上创建学生选课有关关系模式,并插入相应的数据,实现有关查询。1. 描述学生、课程情况的E-R图如下,请将其转化为用关系数据模型描述的关系模式学生课程选修学号姓名年龄所在系成绩课号课程名学时学分先行课号2. 在数据库中定义这些关系模式,并向基本表中插入如下数据:CREATE table Students(Sno char(10) primary key,Sname char(20),Sage int,sdept char(20)creat

4、e table Courses(Cno char(4),Cname char(40),Ccredit int,Ctime int,Cpno char(4),primary key (cno),Foreign key (Cpno) references Courses(Cno)create table SC(Sno char(10),Cno char(4),Grade int,primary key(Sno,Cno),foreign key(Sno) references Students(Sno),foreign key(Cno) references Courses(Cno)insert i

5、nto Students values (20133901,陈一,21,计算机)insert into Students values (20133902,陈二,22,电子)insert into Students values (20133903,陈三,23,通信)insert into Students values (20133904,陈四,20,自动化)insert into Students values (20133905,陈五,21,软件)insert into Students values (20133906,陈六,22,数学)insert into Students val

6、ues (20133907,陈七,23,物联网)insert into Students values (20133908,陈八,20,生物)insert into Students values (20133909,陈九,21,计算机)insert into Students values (20133910,陈十,22,机械)insert into Courses values (0001,C语言,4,60,null)insert into Courses values (0002,C+语言,4,60,null)insert into Courses values (0003,JAVA,4

7、,60,null)insert into Courses values (0004,数据结构,4,60,null)insert into Courses values (0005,高数,4,60,null)insert into Courses values (0006,离散数学,4,60,null)insert into Courses values (0007,计算原理,4,60,0005)insert into Courses values (0008,算法设计,4,60,null)insert into Courses values (0009,文本,4,60,null)insert

8、into Courses values (0010,信息安全,4,60,0009)insert into SC values (20133901,0001,2)insert into SC values (20133902,0001,3)insert into SC values (20133903,0001,4)insert into SC values (20133904,0003,3)insert into SC values (20133905,0001,2)insert into SC values (20133906,0001,1)insert into SC values (20

9、133907,0001,2)insert into SC values (20133908,0001,3)insert into SC values (20133909,0001,4)insert into SC values (20133910,0002,3)3. 插入相应的数据,试着插入重复的元组,结果如何?插入相同数据insert into Students values (20133901,陈一,21,计算机)insert into Students values (20133901,陈一,21,计算机)insert into Students values (20133901,陈一,

10、21,计算机)insert into Students values (20133901,陈一,21,计算机)insert into Students values (20133901,陈一,21,计算机)insert into Students values (20133901,陈一,21,计算机)不能插入重复数据4. 在已建立的关系模式之上(已插入一些数据)建立主键约束,参照约束和用户定义的约束(要求学生年龄不小于14岁,不大于35岁),如果约束不能建立,请分析原因,修改后建立上述约束。alter table Students add check(Sage=14 and Sage=18 a

11、nd Sage8011. 求计算机系每个学生的姓名,选修的课程名和成绩。select Students.Sname,Courses.Cname,SC.Grade from Students,SC,Courses where Students.Sdept=计算机 and Students.Sno=SC.Sno and SC.Cno=Courses.Cno12. 求每个学生的学号及平均成绩。select Sno,AVG(Grade) AvgGrade from SC group by Sno13. 求男学生每一年龄组中超过1人的年龄组及人数。select Sage,Count(Sno) count

12、Sno from Students group by Sage having Count(Sno)114. 求每一门课程的间接先行课号。select C1.Cno,C2.Cpno from Courses C1,Courses C2 where C1.Cpno=C2.Cno15. 求选修了全部课程的学生的学号。 select Sno from Students where not exists (select * from Courses where not exists(select * from SC where Sno=Students.Sno and Cno=Courses.Cno);

13、实验(三):数据库的安全性和完整性实验目的:了解和使用安全子系统;进行完整性定义和检查。实验内容:具体包括如下三部分。一 熟练掌握SQL(续)1. 修改表Students,在其中加入一个字段性别sex char(1) alter table Students add sex char(1); 2. 创建索引:在Students表的Sno上创建唯一聚簇索引, 在SC表的(Sno, Cno)上创建唯一索引. 查询Students表的内容, 记录的顺序有变化吗? 查询SC表的内容, 记录的顺序有变化吗? Create unique clustered index Student_sno on Stu

14、dents(Sno);Create unique index Sno_cno on SC(Sno,Cno);Students表的内容, 记录的顺序有变化SC表的内容, 记录的顺序没有变化3. 创建视图 创建计算机系学生视图CS_Students,其中包括学号、年龄和性别。带with check opition子句不带with check opition子句时各插入一计算机系学生记录, 通过视图查询插入的记录,结果如何?通过表Students查询插入的记录,查看所在系字段上的值?create view CS_students1 as select Sno,Sage,sex from Studen

15、ts where Sdept=CS with check optionINSERT INTO CS_students1VALUES(20133333,19,m);create view CS_students2 as select Sno,Sage,sex from Students where Sdept=CSINSERT INTO CS_students2VALUES(20138888,18,m); 创建一视图,表示学生的平均成绩,其中包括Sno,avgGrade。通过该视图插入一学生姓名和平均成绩,结果如何?通过该视图查找平均成绩在90分以上的学生的学号和平均成绩,结果又如何? crea

16、te view Stuavggrade(sno,avggrade)as select Sno,avg(Grade)from SC group by SC.sno Insert into Stuavggradevalues(20133333,88)select sno,avggradefrom Stuavggradewhere avggrade=90二 了解和使用安全子系统1、将sql server的一合法帐户(user60)加入到你的数据库当中来,并给其授权,SP_grantdbaccess user63;使之:具有创建表的权限grant Create table to user63;具有对S

17、tudents表查询的权限grant select on Students to user63;具有对Studetns表的年龄字段修改的权限grant update(Sage) on Students to user63;2、用user60/user60进入系统,完成权限验证:在Students表上,实现select * from Studentsselect * from db63.user63.STUDENT在course表上,实现select * from courseselect * from db63.user63.Courseupdate Studetns set Sage=Sag

18、e+1update db63.user63.STUDENT set Sage=Sage+1select * from db63.user63.STUDENTupdate Students set Sdept=CSupdate db63.user63.STUDENT set Sdept=CSselect * from db63.user63.STUDENT3、你是数据库的dbo,你来查看dept表,结果如何?使用set user命令使自己成为user60后,查看dept表,结果如何?三 完整性定义和检查1、创建表Studetns,要求学生的年龄在16和25岁之间,并且所在系的缺省取值为CSCRE

19、ATE TABLE Students(Sno CHAR(9) not null,Sname CHAR(20) ,Sdept char(20) defaultCS,Sage int check(Sage=16 and Sage=25),Ssex char(2);在Studetns表上插入一学生记录(9921,cccc,MA,23,f)insert into Students(Sno,Sname,Sdept,Sage,Ssex)values(9921,cccc,MA,23,f);在Studetns表上插入一学生记录(9922,ddd,MA,27,m)insert into Students(Sno

20、,Sname,Sdept,Sage,Ssex)values(9922,ddd,MA,27,m);在Studetns表上插入一学生记录(9923,eeeee,21,m)insert into Students(Sno,Sname,Sage,Ssex)values(9923,eeeee,21,m);在Studetns表上插入一学生记录(9922,ddd,MA,23,m)insert into Students(Sno,Sname,Sdept,Sage,Ssex)values(9922,ddd,MA,23,m);2、创建表course,要求课号作为主键create table course(cno

21、char(10) primary key,ctime char(10),cname char(20),cscore char(10);在course表上插入一课程记录(c9,40,cname1,1)insert into course(cno,ctime,cname,cscore)values(c9,40,cname1,1);在course表上插入一课程记录(c9,40,cname2,1)insert into course(cno,ctime,cname,cscore)values(c9,40,cname2,1);在course表上插入一课程记录(null,25,canme3,2)inser

22、t into course(cno,ctime,cname,cscore)values(null,25,cname3,2);3、修改表Studetns,指定学号为主键,然后ALTER TABLE Students ADD CONSTRAINT pk_Sno PRIMARY KEY(Sno)插入一记录(9908,shang,CI,20)insert into Students(Sno,Sname,Sdept,Sage)values(9908,shang,CI,20);插入一记录(9908,shang,CI,20)insert into Students(Sno,Sname,Sdept,Sage)

23、values(9908,shang,CI,20);插入一记录(,liang,CS,18)insert into Students(Sno,Sname,Sdept,Sage)values(,liang,CS,18);插入一记录(,an,CS,19)insert into Students(Sno,Sname,Sdept,Sage)values(,an,CS,19);4、 创建sc表,要求表sc中的学号参照表Studetns中的学号,sc中的课号参照course中的课号。参照约束创建完成后,向这 三个表插入数据。create table SC(Sno char(9),Cno char(10),Gr

24、ade int,foreign key(Sno) references Students(Sno),foreign key(Cno) references course(cno)先在sc表插入一个选课记录,看看有什么情况发生?insert into SC(Sno,Cno,Grade)values(9922,c9,85);先删除sc中的某个记录,看看有什么情况发生?delete from SC where Sno = 9922;将Studetns表中的学号9906改为9907,看看有什么情况发生?update Students set Sno=9907where Sno=9906;实验(四):事

25、务的并发控制实验目的:通过实验了解实际系统中,三级封锁协议的实现方法和使用方法,体会加锁操作、死锁检测与解除。实验内容:具体分如下五部分。 说明:(1)Set transaction isolation level read uncommittedread committedrepeatable readserializable分别对应隔离级0,1,2,3。(2)要求两人一组。1、 隔离级1(缺省)方式下体会两事务的并发执行结果。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表studentsl user1输入

26、并执行下列语句begin transactionupdate table students set age=20+1 where sno=95001l user2输入并执行下列语句begin transaction select * from students where sno=950011) 观察发生的现象, user2的语句可以执行吗(是否可以读到别人没有提交的数据)? 不可以 2) user1输入并执行下列语句commit 观察发生的现象, user2的语句执行了吗? 可以 3) 加锁和解锁操作的完成者是数据库用户吗? l user2输入并执行下列语句commit不是,是数据库系统2、

27、 隔离级1(缺省)方式下体会两事务的并发执行结果。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表studentsl user2输入并执行下列语句begin transaction select age from students where sno=95001l user1输入并执行下列语句begin transactionupdate table students set age=20+1 where sno=950011) 观察发生的现象, user1的语句可以执行吗(是否可以修改别人正在读的数据)?可以

28、l user2输入并执行下列语句select age from students where sno=950012) 观察发生的现象, user2的语句执行了吗? 结果如何(是否可重复读)? user2输入并执行下列语句commit l user1输入并执行下列语句commit不执行3、 在隔离级0方式下体会两事务的并发执行结果。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表studentsl user1输入并执行下列语句begin transactionupdate table students set a

29、ge=20+1 where sno=95001l user2输入并执行下列语句begin transaction set transaction isolation level Read Uncommittedselect * from students where sno=950011) 观察发生的现象, user2的语句可以执行吗(是否可以读到别人没有提交的数据)? 可以l user1输入并执行下列语句commitl user2输入并执行下列语句commit 4、 在隔离级1(缺省)方式下体会两事务的并发执行死锁情况。具体步骤如下(以user1和user2为例):l user1首先将use

30、r2接纳为自己数据库的用户, 并授权user2可以修改学生表students和学生选课表scl user1输入并执行下列语句begin transaction update table students set age=age+1l user2输入并执行下列语句begin transactionupdate table sc set grade=grade+5l user1输入并执行下列语句update table sc set grade=grade+51) 观察发生的现象, user1的语句可以执行吗? 可以l user2输入并执行下列语句update table students set

31、 age=age+12) 观察发生的现象, user2的语句执行了吗? 结果如何? 不可以l 在成功执行的窗口输入并执行下列语句commit 5、 在隔离级1(缺省)方式下体会两事务并发执行锁的粒度(锁数据所在页)。具体步骤如下(以user1和user2为例):l user1首先将user2接纳为自己数据库的用户, 并授权user2可以查询学生表students(该实验要求表中元组数要足够多, 要求指定关键字约束)l user1输入并执行下列语句begin transaction update table students set age=age+1 where sno=95001l user2输入并执行下列语句begin transactionselect * from students where sno=952011) 观察发生的现象, user2的语句可以执行吗?l user2输入并执行下列语句commitl user1输入并执行下列语句commit 可以

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服