学习好资料欢迎下载课程教案课程名称:数据库原理实验任课教师:陈利平所属系部:计算机科学系教学班级:软件1201-02教学时间:2013-2014学年第2学期湖南工学院学习好资料欢迎下载课程基本信息课程名称数据库原理实验课程代码总计:56学时讲课:40学时实验:16学时上机:16学时课程设计:周学分1类别必修课()选修课()理论课()实验课(√)任课教师陈利平职称副教授授课对象专业班级:软件1201-02共2个班课程简介一、课程性质《数据库原理》是研究、解决有效获取数据和处理数据的问题,在信息管理与信息系统、电子商务、物流信息专业是一门专业基础课,在管理科学与工程类和工商管理类其它专业是的一门专业选修课。其主要任务是根据信息处理的要求,通过E-R图方法、概念设计、逻辑设计等能够进行需求分析,运用数据库管理系统、面向对象编程技术完成实际功能、人机界面等程序设计。实验课是本课程重要的教学环节,其目的是通过上机实践,配合课堂教学内容加深对数据库的基本概念和基本技术的理解,使学生掌握基本的数据库实验技能,掌握数据库系统设计的基本思想和基本步骤,熟练掌握关系数据库的标准语言SQL的应用,为学生熟练掌握数据库应用系统的开发打下一个很好的实践基础。二、课程主要内容和目标该课程的主要教学内容和教学目标是:1.掌握使用SQL语言及SQLSERVER企业管理器创建数据库、表、索引和修改表结构。2.掌握SQLSERVER2000中实体、参照及用户自定义完整性约束定义。3.掌握用SQL语句实现数据的插入、修改和删除。4.进一步掌握SQLSERVER查询分析器的使用方法,加深SQL语言的嵌套查询语句的理解。5.加深对数据安全性的理解,掌握SQLSERVER中有关用户、角色及操作权限的管理方法。6.创建表的视图,修改和删除表的视图,并利用视图完成表的查询。7.掌握简单子查询、IN子查询及EXISTS子查询的用法,并能应用T-SQL进行综合查询。基本教材和参考资料1.刘金岭,冯万利主编《数据库原理及应用实验与课程设计指导》清华大学出版社,2010学习好资料欢迎下载实验一数据库的定义实验目的:要求学生熟练掌握和使用SQL、Transact-SQL、SQLServer企业管理器创建数据库、表、索引和修改表结构,并学会使用SQLServer查询分析器接收Transact-SQL语句和进行结果分析。教学课时:2学时教学设备:安装SQLServer的微机实验内容:1创建数据库和查看数据库属性。2创建表、确定表的主码和约束条件。为主码建索引。3查看和修改表结构。4熟悉SQLServer企业管理器和查询分析器工具的使用方法。实验步骤:1基本操作实验(1)将教材中用SQL描述的建立学生--课程操作.在SQLServer企业管理器中实现。库中表结构为:学生(学号,姓名,年龄,性别,所在系).课程(课程号,课程名,先行课).选课(学号,课程号,成绩)要求:1)建库、建表和建立表间联系。,2)选择合适的数据类型。3)定义必要的索引、列级约束和表级约束.(2)将自设计的数据库应用系统中的数据库、库中的表、索引和约束用Transact-SQL表达,并通过企业管理器或查询分析器实现建库、建表、建立表间联系和建立必要的索引、列级约束和表级约束的操作.实验思考:1为什么要建立索引?图书读者数据库和学生.课程库中建立多少索引合适。2学生.课程库的选课表中属性学号、课程号采用数值型,还是采用字符型的?学习好资料欢迎下载采用哪种数据类型更好?实验报告:1分别用SQL和Transact-SQL表示的学生-课程库建表和建库操作、指出SQL和Transact-SQL定义语句的不同之处。2指出学生.课程库中各表的主码、外码和数据约束。3实验操作步骤和实验结果.实验中出现的问题和解决方法。4体会和提高。实验注意:1.建表中如果出现错误.应采用相应的修改结构或删除结构的方法。2.注意数据库的主码、外码和数据约束的定义。实验后记:学习好资料欢迎下载实验二数据库的简单查询和连接查询实验实验目的:使学生掌握SQLServer查询分析器的使用方法.加深对SQL和Transact-SQL语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据联结查询的操作方法。教学课时:2学时教学设备:安装SQLServer的微机实验内容:1简单查询操作该实验包括投影、选择条件表达、数据排序、使用临时表等。2连接查询操作该实验包括等值连接、自然连接、求笛卡尔积、一般连接、外连接、内连接、左连接、右连接和自连接等。实验步骤:1基本操作实验(1)简单查询实验l)用Transact-SQL语句表示下列操作.在学生选课库中实现其数据查询操作.①求数学系学生的学号和姓名。②求选修了课程的学生学号。③求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。④获选修课程C1且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。⑤求数学系或计算机系姓张的学生的信息。③求缺少了成绩的学生的学号和课程号。2)在图书借阅库中实现其查询操作:将计算机类的书存入永久的计算机图书表中,将借书日期在1999年以前的借阅记录存入临时的超期借阅表。(2)连接查询实验学习好资料欢迎下载用Transact-SQL语句表示,并在学生选课库中实现下列数据连接查询操作:①查询每个学生的情况以及他(她)所选修的课程。②求学生的学号、姓名、选修的课程名及成绩。③求选修C1课程且成绩为90分以上的学生学号、姓名及成绩。④查询每一门课的间接先行课(即先行课的先行课)。实验思考:1如何提高数据查询和连接速度。2对于常用的查询形式或查询结果,怎样处理好?实验报告:1分别用SQL和Transact-SQL写出实验操作的查询语句,对两种语言进行比较。2实验步骤和实验结果。3实验中的问题和提高。实验注意:1查询结果的几种处理方式。2内连接、左外部连接和右外部连接的含义及表达方法。3输入SQL语句时应注意,语句中均使用西文操作符号。学习好资料欢迎下载实验三数据库的嵌套查询实验实验目的:使学生进一步掌握SQLServer查询分析器的使用方法,加深SQL和Transact-SQL语言的嵌套查询语句的理解。教学课时:2学时教学设备:安装SQLServer的微机实验内容:在SQLServer查询分析器中使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。实验步骤:1基本操作实验用Transact-SQL语句表示,在学生选课库中实现其数据嵌套查询操作。(1)求选修了高等数学的学生学号和姓名。(2)求C1课程的成绩高于张三的学生学号和成绩。(3)求其他系中年龄小于计算机系年龄最大者的学生。(4)求其他系中比计算机系学生年龄都小的学生。(5)求选修了C1课程的学生姓名。(6)求没有选修C1课程的学生姓名。(7)查询选修了全部课程的学生的姓名。(8)求选修了学号为“S2”的学生所选修的全部课程的学生学号和姓名。(9)求学生的总人数.(10)求选修课程的学生人数.(11)求课程和选修课程的人数.(12)求选修课的学生学号实验思考:试用多种形式表示实验中的查询语句并进行比较。实验报告:1分别用SQL和Transact-SQL写出实验操作的查询语句,对两种语言进行比较。学习好资料欢迎下载2实验步骤和实验结果。3实验中的问题和提高。实验注意:1输入SQL语句时应注意,语句中均使用西文操作符号。2语句的层次嵌套关系和括号的配对使用问题。实验后记:学习好资料欢迎下载实验四数据库的组合查询和统计查询实验实验目的:使学生熟练掌握SQLServer查询分析器的使用方法.加深对SQL和Transact-SQL语言的查询语句的理解。熟练掌握数据查询中的分组、统计、计算和组合的操作方法。教学课时:2学时教学设备:安装SQLServer的微机实验内容:1分组查询实验该实验包括分组条件表达、选择组条件的表达方法。2使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。3组合查询实验。4计算和分组计算查询的实验。实验步骤:1基本操作实验在学生选课库中实现其数据嵌套查询操作:(1)查询选修“计算机基础”课程的学生成绩比此科学的平均成绩大的学生学号和成绩。(2)查询选修“计算机基础”课程的学生平均成绩。(3)查询年龄大于女学生平均年龄的男学生的姓名和年龄。(4)列出各系学生的总人数,并按人数进行降序拍了。(5)统计各系各门课程的平均成绩。(6)查询选修计算机基础和离散数学的学生学号和平均成绩。(7)查询选修了全部课程的学生的姓名。2提高操作实验将自设计的数据库应用项目中的分组、统计、计算和组合查询用Transact-SQL语句表示.并通过SQLServer查询分析器实现其查询操作。1)求学生的总人数.2)求选修课程的学生人数.3)求课程和选修课程的人数.4)求选修课的学生学号学习好资料欢迎下载实验思考:1组合查询语句是否可以用其他语句代替,有什么不同?2使用GROUPBY分组条件子句后,语句中的统计函数的运行结果有什么不同?实验报告:1分别用SQL和Transact-SQLL写出实验操作的查询语句对两种语言进行比较。2实验步骤和实验结果。3实验中的问题和提高。实验注意:1子句WHERE条件表示元组筛选条件,子句HAVING条件表示组选择条件。2组合查询的子句间不能有语句结束符。3子句HAVING条件必须和GROUPBY分组字段子句配合使用。学习好资料欢迎下载实验五数据库视图和触发器实验目的:使学生掌握SQLServer中的视图创建向导和图表创建向导的使用方法,加深对视图和SQLServer图表作用的理解。理解触发器的工作原理,掌握如何使用inserted表和deleted表及如何创建:INSERT、UPDATE、DELETE触发器。教学课时:2学时教学设备:安装SQLServer的微机实验内容:1创建、查看、修改和删除视图。2创建、编辑和删除数据库图表。3创建和删除触发器。实验步骤:1视图操作实验1)建立男学生的视图schoolboy,属性包括学号、姓名和年龄。2)在视图schoolboy中查询年龄为19的学生学号与姓名。3)将学号为S2的年龄改为21。4)向男学生视图schoolboy中插入一个新的男生记录,其中学号为S6,姓名为MING,年龄为20。5)删除视图schoolboy中学号为S3的记录。6)建立女学生的视图,属性包括学号、姓名、选修课程名和成绩。7)在女学生视图中查询平均成绩大于80分的学生学号与姓名。8)删除女学生视图。2触发器实验1)实现student和sc的级联删除。实验思考:1为什么要建立视图?视图和基本表有什么不同?2视图和图表有什么不同?实验报告:1用Transact-SQL写出实验操作的查询语句。2实验步骤和实验结果。学习好资料欢迎下载3实验中的问题和提高。实验注意:1参照表和被参照表之间的关系。主码和外码间的关系.2视图中字段名的重命名问题。实验后记:学习好资料欢迎下载实验六游标和存储过程实验目的:使学生加深对游标和存储过程的理解.掌握游标的定义、使用方法及使用游标修改和删除数据的方法;掌握存储过程的使用、执行存储过程和查看、修改、删除存储过程的方法。教学课时:2学时教学设备:安装SQLServer的微机实验内容:1利用游标逐行显示所查询的数据块的内容。2利用游标显示指定行的数据的内容。3利用游标修改和删除指定的数据元组。4创建、修改、调用和删除存储过程。实验步骤:1.基本操作实验1)游标(1)使用游标逐行显示数据。(2)使用游标显示指定行的数据。(3)利用游标修改数据。(4)利用游标删除数据。2)存储过程(1)存储过程的创建。(2)存储过程的修改。(3)存储过程的调用。(4)存储过程的删除实验思考:1.为什么在数据处理中引入游标?2.如何提取出游标中的数据?用何种语句?学习好资料欢迎下载3.存储过程有哪些主要优点?实验报告:1用Transact-SQL写出实验操作的语句。2实验步骤和实验