数据库系统概论实验时间6周周一1-2节7周周一1-2节8周周一1-2节12周周一1-2节课程实验报告课程名称数据库系统概论班级软件115实验日期2013.4.8姓名张志华学号20107357实验成绩实验名称实验1:数据定义语句及数据查询语句实验目的及要求1.掌握数据查询语句。实验环境操作系统:WindowsDBMS:SQLServer2005实验内容首先在DBMS环境下直接创建书中第56页的3张表。1.在查询分析器在窗口下用SELECT语句完成单表查询:(1)查询全体学生的详细记录;(2)查询所有选修过课的学生的学号;(3)查询考试成绩不及格的学生的学号;(4)查信息系(IS)、数学系(MA)和计算机科学系(CS)的学生的姓名和性别;(5)查所有姓刘的学生的姓名、学号和性别;(6)查包含课程名中包含DB_Analysis的课程的课程号和学分;(7)查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列;(8)查询学习1号课程的学生最高分数;(9)查询各个课程号与相应的选课人数;2.在查询分析器在窗口下用SELECT语句完成连接(嵌套)查询:(10)查询每个学生及其选修课程的情况,包括学生姓名和课程名;(11)查询选修2号课程且成绩在90分以上的所有学生;(12)查询每个学生及其选修的课程名其及成绩;(13)查询与“张三”在同一个系学习的学生;(14)查询其他系中比信息系某一学生年龄小的学生姓名和年龄;(15)查询其他系中比信息系所有学生年龄都小的学生姓名及年龄;调试过程(1)及实验结果(2)(3)(4)(5)(6、7)(8)(9)(10)(11)(12)(13)(14)(15)总结(对实验结果进行分析,问题回答,实验心得体会及改进意见)附录(1)SELECTSno,Ssname,Ssex,Sage,SdeptFROMSdudent;(2)SELECTDISTINCTSnoFROMSCWHERECnoIN('1','2','3');(3)SELECTDISTINCTSnoFROMSCWHEREGrade60;(4)SELECTSSname,SsexFROMSdudentWHERESdeptIn('IS','MS','CS');(5)SELECTMAX(Grade)FROMSCWHERECno='1';(6)、SELECTCno,CcreditFROMCourseWHERECname='DB_Analysis';(7)SELECTSno,GradeFROMSCWHERECno='3'ORDERBYGradeDESC;(8)SELECTSno,Ssname,SsexFROMSdudentWHERESsnameLIKE'刘%';(9)SELECTCno,COUNT(Sno)FROMSCGROUPBYCno;(10)SELECTSname,CnameFROMStudent,SC,CourseWHEREStudent.Sno=SC.SnoANDSC.Cno=Course.Cno;(11)SELECTSnoFROMSCWHERECno='2'ANDGrade90;(12)SELECTSname,Cname,GradeFROMStudent,SC,CourseWHEREStudent.Sno=SC.SnoANDSC.Cno=Course.Cno;(13)SELECT*FROMStudentWHERESdeptIN(SELECTSdeptFROMStudentWHERESname='张三');(14)SELECTSname,SageFROMStudentWHERESage(SELECTMAX(Sage)FROMStudentWHERESdept='IS')ANDSdept'Is';(15)SELECTSname,SageFROMStudentWHERESage(SELECTMIN(Sage)FROMStudentWHERESdept='IS')ANDSdept'Is';课程实验报告课程名称数据库系统概论班级软件115实验日期2013.4.15姓名张志华学号201107357实验成绩实验名称实验2:数据更新及视图实验目的及要求1.掌握数据定义语句;2.掌握数据更新语句;3.掌握视图的使用。实验环境操作系统:WindowsDBMS:SQLServer2005实验内容商品(商品号字符(3),商品名字符(20),单价浮点型,商品类别字符(5),供应商字符(20));顾客(顾客号字符(3),姓名字符(10),住址字符(20));购买(顾客号字符(3),商品号字符(3),购买数量整型);用SQL语句实现如下题目:1.创建上述3个表。2.往表中插入数据:商品:M01,佳洁士,8.00,牙膏,宝洁;M02,高露洁,6.50,牙膏,高露洁;M03,黑人,7.50,牙膏,联合利华;M04,舒客,6.2,牙膏,舒客;M05,狮王,12.2,牙膏,狮王;顾客:C01,Dennis,海淀;C02,John,朝阳;购买:C01,M01,13;C01,M05,12;C01,M04,22;C02,M02,15;3.将所有的牙膏商品单价增加20%。4.将宝洁供应商改为P&G。5.删除所有卖出总数量少于20个的商品信息,不包括从没有卖出的商品。6.删除没有购买记录的商品。7.创建顾客号,商品号,商品名称,单价,购买数量的视图。调试过1程及实验结果234567总结(1)在建表时关键字不能错,标点符号用英文的标点,不能用中文的标点。(2)在建表之后,需要刷新才可以见到表。(3)在修改数据是是字符类型的要用单引号。(4)在写语句时先弄明白嵌套关系和属性。附录1createtable商品(商品号char(3),商品名char(20),单价float,商品类别char(5),供应商char(20),);createtable顾客(顾客号char(3),姓名char(10),住址char(20),);createtable购买(顾客号char(3),商品号char(3),购买数量int,primarykey(商品号,顾客号),);2insertinto商品values('M01','佳洁士',8.00,'牙膏','宝洁');insertinto商品values('M02','高露洁',6.50,'牙膏','高露洁');insertinto商品values('M03','黑人',7.50,'牙膏','联合利华');insertinto商品values('M04','舒客',6.2,'牙膏','舒客');insertinto商品values('M05','狮王',12.2,'牙膏','狮王');insertinto顾客values('C01','Dennis','海淀');insertinto顾客values('C02','John','朝阳');insertinto购买values('C01','M01',13);insertinto购买values('C01','M05',12);insertinto购买values('C01','M04',22);insertinto购买values('C02','M02',15);3update商品set单价=单价+单价*0.2;4update商品set供应商='P&G'where商品号='M01';5deletefrom商品where商品.商品名in(select商品.商品名from购买,商品where购买.商品号=商品.商品号and购买.购买数量20and购买.购买数量!=0);6deletefrom商品where商品.商品名in(select商品.商品名from购买,商品where购买.商品号=商品.商品号and购买.购买数量!=0);7createview视图asselect购买.顾客号,购买.商品号,商品.商品名,商品.单价,购买.购买数量from商品,购买where商品.商品号=购买.商品号;课程实验报告课程名称数据库系统概论班级软件115实验日期2013.4.22姓名张志华学号201107357实验成绩实验名称实验3:数据库的完整性和安全性实验目的及要求1.掌握实体完整性规则的定义方法;2.掌握参照完整性规则的定义方法;3.掌握用户定义完整性的定义方法;4.掌握数据库安全性控制。实验环境操作系统:WindowsDBMS:SQLServer2005实验内容有三个关系模式:Student(snovarchar(10)主键,snamevarchar(8),ssexvarchar(2)默认为‘男’,sageint介于20到50之间,sdeptvarchar(20));Course(cnovarchar(5)主键,cnamevarchar(20)唯一,cpnovarchar(5),creditint);SC(snovarchar(10)主键,Student表的外键,cnovarchar(5)主键,Course表的外键,gradeint)。数据库的完整性(1)利用查询分析器创建上述3个基本表。(2)删除student表的关于sage20到50的约束数据库的安全性:用GRANT和REVOKE语句完成以下授权定义或存取控制功能:(3)用户王明对Student表和Course表有SELECT权力;(4)用户李勇对Student表和Course表有INSERT和DELETE权力;(5)用户刘星对Student表有SELECT权力,对Student表的sage字段有更新权力;(6)用户张新具有创建表的权力;(7)用户周平具有对Student表和Course表所有权力,并具有给其他用户授权的权力;(8)回收李勇、张新的权限调试过程(1)(2)(3)(4)及实验结果(5)(6)(7)(8)总结(对实验结果进行分析,问题回答,实验心得体会及改进意见)附录(1)(2)(3)(4)(5)(6)(7)(8)课程实验报告课程名称数据库系统概论班级软件115实验日期2013.5.20姓名张志华学号201107357实验成绩实验名称实验4:编写存储过程访问数据库实验目的及要求1.熟悉使用存储过程来进行数据库应用程序的设计。实验环境操作系统:WindowsDBMS:SQLServer2005实验内容创建关系模式SCSC(snovarchar(10)主键,Student表的外键,cnovarchar(5)主键,Course表的外键,scoreint,newscorevarchar(1))一开始SC表中的前3列是有数据的,newgrade列全部是空的1.编写存储过程将学生选课成绩(百分制)转换成等级制(即A、B、C、D、F),要求使用游标完成其中,A:90~100B:80~89C:70~70D:60~69F:0~592.执行该存储过程,使得newgrade列中为各等级。调试过程及实验结果总结附录