您好,欢迎访问三七文档
南华大学计算机科学与技术学院实验报告(2013~2014学年度第2学期)课程名称数据库原理与设计实验名称数据库原理设计实验姓名赖淑琴学号323专业软件工程班级软件3班地点校内教师刘征海实验1认识DBMS一、实验题目1.利用管理工具创建数据库,表和表间的关系2.利用SQL语句创建数据库,表和表间的关系二、实验要求1.使用SQlServer2012的管理工具进行可视化操作2.使用SQl语句在SQlServer2012进行代码操作3.熟练掌握实用工具和编写SQL语句两种方法三、实验代码1、利用管理工具创建数据库,表和表间的关系2、利用SQL语句创建数据库,表和表间的关系(1)、创建数据库(2)、创建表和表间关系(3)、录入表数据四、实验总结在SQLServer2012中,由于可视化工具的使用,极大的方便了我们的操作,但是这些操作的背后都是SQL语句,因此,在享受工具带来的方便的同时,不可忽视对SQL语句的学习实验2交互式SQL(1)1、实验题目数据库单表查询和多表连接查询2、实验要求(1)、掌握单表查询SELECT、FROM、WHERE的用法,特别要掌握比较运算符、逻辑运算符的使用(2)、理解多表查询的概念;掌握多表查询的SELECT、FROM、WHERE、JOIN子句的用法,特别要求比较内连接、外连接的结果3、实验代码(1)、单表查询①查询计算机系全体学生的信息②查询姓“李”的学生的学号和姓名。③查询课程表中先行课为空的课程名。(4)、查询考试成绩有不及格的学生的学号⑤求选修了C1课程或C2课程的学生的学号及成绩。⑥查询全体计算机系学生的姓名及其年龄。⑦查询计算机系在1986-1987年之间出生的学生的姓名。⑧查询姓“李”的前两个学生的学号和姓名。⑨查询选修了两门以上课程的学生学号与课程数。⑩查询选修课程数大于等于2的学生的学号、平均成绩和选课门数,并按平均成绩降序排列。(2)、多表连接查询①查询选修了【数据库原理】的计算机系的学生学号和姓名。②查询每一门课的间接先行课(即先行课的先行课)。③查询学生的学号、姓名、选修课程的名称和成绩。④查询选修了课程的学生姓名。⑤查询所有学生的信息和所选修的课程。⑥查询已被选修的课程的情况和所有课程的名字。⑦列出学生所有可能的选修情况。⑧查找计算机系的学生选修课程数大于2的学生的姓名、平均成绩和选课门数,并按平均成绩降序排列4、实验总结在对单表进行操作时要注意where,groupby,having,orderby的顺序问题,在多表查询时应该注意要给表所取别名,每个表的主键以及表间的外键应该多多注意。实验3交互式SQL(2)1、实验题目数据库嵌套查询和组合查询2、实验要求掌握查询中嵌套查询和组合查询的操作方法,进一步加深对SELECT语句的理解3、实验代码(1)统计选修了【数据库原理】课程的学生人数。(2)查询没有选修【数据库原理】课程的学生信息。(3)查询其他系中比计算机系学生年龄都小的学生。(4)查询被0602001学生或0602002学生所选修的课程的课程号(用UNION组合查询与IN条件查询两种方法实现)。(5)查询0602001学生和0602002学生同时选修的课程的课程号(用INTERSECT组合查询与EXISTS嵌套子查询两种方法实现)。(6)查询被0602001学生选修,但没有被0602002学生所选修的课程的课程号(用EXCEPT组合查询与NOTEXISTS嵌套子查询两种方法实现)。4、实验总结在对表进行复杂查询时,一般有组合,嵌套两种方式实现,其中要留意组合和嵌套之间的对应关系,同时EXISTS的使用较为复杂。实验4交互式SQL(3)1、实验题目数据的更新2、实验要求熟悉插入、修改和删除SQL语句的用法3、实验代码①向表StudentsYYXXXX中插入(0601001,赵林,男,1985-09-08,计算机)的记录。②向SCYYXXXX表中添加一个学生的选课记录,学号为0601001,所选的课程号为C2。SC表中有Sno、Cno、Grade这3个列。这里只知道学号和课程号,不知道成绩值。③向表StudentsYYXXXX中插入(0601002,张修雨,default)记录,该记录的数据中default表示默认值‘男’,其他数据表示空值。④用CREATE语句建立表StudentBAK1YYXXXX,包含(与Students的Sno、Sname、Sdept相同)3个字段,然后用INSERTSELECT语句实现向StudentBAK1YYXXXX添加StudentsYYXXXX表中的计算机系学生的学号、姓名、所在系的信息。⑤用SELECT...INTO语句实现把StudentsYYXXXX表中1986年后(包含1986年)出生的学生的学号、姓名存储到一个新表StudentBAK2YYXXXX。⑥将姓名为【赵林】的同学的所在系改为【机电系】,爱好改为【足球】。⑦将选修了课程名为【数据库原理】的学生成绩加5分。⑧将StudentCourseYYXXXX数据库的StudentBAK1YYXXXX表中所有姓赵的同学删除。⑨删除计算机系选修成绩不及格的学生选修记录。⑩将StudentCourseYYXXXX数据库的StudentBAK2YYXXXX表中的所有行删除。4、实验总结使用SQL对表进行增加,删除,修改等操作要留意表与表之间的关联,在执行完SQL语句后应该及时刷新数据库内容,否则不会显示表的增加或者表的改变。
本文标题:数据库实验报告
链接地址:https://www.777doc.com/doc-6019696 .html