《《mysql》教学大纲(共12页).doc》由会员分享,可在线阅读,更多相关《《mysql》教学大纲(共12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上电商物流概论课程教学大纲课程类别:通识选修课适用对象:各专业本、专科学生总 学 时:32 讲授学时:30 课外实践学时:2一、课程的性质及任务(一)课程的性质、任务1课程性质:随着数据库技术的不断发展,关系型数据库已成为市场主流。由于MySQL数据库具有稳定、可靠、简单、安全而且开源等特性,MySQL数据库成为了关系型数据库的佼佼者,受到越来越多的用户青睐。MySQL数据库目前被广泛应用于各个行业中,MySQL数据库工程师也因为其工作的重要性和技术性拥有了良好的待遇和广阔的发展前景。通过本课程的学习,学生可以了解MySQL数据库的结构原理和相关知识,掌握MySQL数据
2、库日常操作和维护的技能,并具备一定数据库开发的能力。2课程任务:本课程是面向计算机相关专业的一门专业基础课,涉及数据库基础知识、MySQL数据库的安装和配置、数据库和表的操作、事务管理、锁管理、存储过程管理、视图管理、函数管理、应用程序开发等内容,通过本课程的学习,学生能够了解数据库的基础知识,掌握MySQL数据库的开发和管理技术,并初步具备应用程序开发能力。具体如下:(1)了解MySQL的特征及功能,掌握MySQL的基础知识和核心技术。(2)掌握MySQL的安装及配置,熟悉MySQL在应用程序中的作用。(3)掌握MySQL数据库开发的全过程。教学重点和难点:教学重点:MySQL服务器的配置、
3、MySQL存储引擎的概念、MySQL字符集、存储过程、函数、事务和锁管理。教学难点:在学生没有数据库知识、没有太多编程知识的前提下进行数据库建模,开发小型软件项目。二、主要教学内容及教学要求(一)数据库设计概述主要教学内容(1)数据库概述主要知识点:关系数据库管理系统;关系数据库;结构化查询语言SQL。(2)数据库设计的相关知识主要知识点: 商业知识和沟通技能;数据库设计辅助工具;“选课系统”概述;定义问题域;编码规范。(3)E-R图主要知识点:实体和属性;关系;E-R图的设计原则。(4)关系数据库设计主要知识点:为每个实体建立一张数据库表;为每张表定义一个主键;增加外键表示一对多关系;建立新
4、表表示多对多关系;为字段选择合适的数据类型;定义约束(constraint)条件;评价数据库表设计的质量;使用规范化减少数据冗余;避免数据经常发生变化。教学要求本章抛开MySQL讲解关系数据库设计的相关知识,以“选课系统”为例,讲解“选课系统”数据库的设计流程。(二)MySQL基础知识主要教学内容(1)MySQL概述主要知识点:MySQL的特点;MySQL服务的安装;MySQL服务的配置;启动与停止MySQL服务;MySQL配置文件;MySQL客户机;连接MySQL服务器。(2)字符集以及字符序设置主要知识点:字符集及字符序概念;MySQL字符集与字符序;MySQL字符集的转换过程;MySQL
5、字符集的设置;SQL脚本文件。(3) MySQL数据库管理主要知识点:创建数据库;查看数据库;显示数据库结构;选择当前操作的数据库;删除数据库。(4)MySQL表管理主要知识点:MyISAM和InnoDB存储引擎;设置默认的存储引擎;创建数据库表;显示表结构;表记录的管理;InnoDB表空间;删除表。(5)系统变量主要知识点:全局系统变量与会话系统变量;查看系统变量的值;设置系统变量的值;MySQL数据库备份和恢复。教学要求1.教学基本要求本章将向学生展示一个完整的MySQL数据库开发流程,完整的MySQL数据库开发流程应该包括:设计数据库表(第一章已经讲过),安装、配置和启动MySQL服务,
6、连接MySQL服务器,设置字符集,创建数据库,选择当前操作的数据库,在当前数据库中创建表(设置存储引擎)、索引、视图、存储过程、触发器等数据库对象,访问数据库表等数据库对象,备份数据库以及恢复数据库等内容。2.要求学生掌握的基本概念、理论、技能通过本章的学习,学生可以掌握一些常用的MySQL命令,通过这些命令,学生可以对MySQL数据库进行一些简单的管理。3.教学重点和难点教学重点是字符集以及字符序设置、MySQL表管理。教学难点是理解系统变量的使用。(三)MySQL表结构的管理主要教学内容(1)MySQL数据类型主要知识点: MySQL整数类型;MySQL小数类型;MySQL字符串类型;My
7、SQL日期类型;MySQL复合类型;MySQL二进制类型;选择合适的数据类型。(2)创建表主要知识点:设置约束;设置自增型字段;其他选项的设置;创建“选课系统”数据库表;复制一个表结构。(3)修改表结构主要知识点: 修改字段相关信息;修改约束条件;修改表的其他选项;修改表名; 删除表。(4)索引主要知识点:理解索引;索引关键字的选取原则;索引与约束;创建索引;删除索引。教学要求1.教学基本要求本章详细讲解“选课系统”数据库中各个表的实施过程,包括定义表的字段(字段名及数据类型)、约束条件、存储引擎以及字符集、索引等内容。表结构的管理包括创建表(create table)、修改表结构(alter
8、 table)、删除表(drop table)以及索引的管理。2.要求学生掌握的基本概念、理论、技能通过本章的学习,学生可以掌握表结构管理的相关知识。3.教学重点和难点教学重点是MySQL数据类型、创建表、修改表结构。教学难点是理解索引的使用。(四)表记录的操作主要教学内容(1)表记录的插入主要知识点:使用insert语句插入新记录;更新操作与字符集;关于自增型字段;批量插入多条记录;使用insert?select插入结果集;使用replace插入新记录。表记录的修改主要知识点:使用update 语句完成数据的修改。(3)表记录的删除主要知识点:使用delete删除表记录;使用truncate
9、清空表记录。(4)MySQL特殊字符序列。教学要求1.教学基本要求成功创建数据库表后,需要向表插入测试数据,必要时需要对测试数据进行修改和删除,这些操作称为表记录的更新操作。本章详细讲解“选课系统”的各种更新操作,一方面是为接下来的章节准备测试数据,另一方面希望学生对“选课系统”的各个表结构有更深刻的认识。2.要求学生掌握的基本概念、理论、技能通过学习,学生可以对表进行更新操作,包括插入、修改和删除记录,为接下来的章节准备测试数据,便于后续章节的学习。3.教学重点和难点教学重点是insert语句、update语句以及delete语句的使用。教学难点是理解MySQL特殊字符序列。(五)表记录的检
10、索主要教学内容(1)select语句概述主要知识点:使用select子句指定字段列表;使用谓词过滤记录;使用from子句指定数据源;多表连接。(2)使用where子句过滤结果集主要知识点:使用单一的条件过滤结果集;is NULL运算符 ;select语句与字符集;使用逻辑运算符;使用like进行模糊查询。(3)使用order by子句对结果集排序(4)使用聚合函数汇总结果集(5)使用group by子句对记录分组统计主要知识点:group by子句与聚合函数;group by子句与having子句;group by子句与group_concat()函数;group by子句与with roll
11、up选项 。(6)合并结果集(7)子查询教学要求1.教学基本要求数据库中最为常用的操作是从表中检索所需要的数据。本章将详细讲解select语句检索表记录的方法,并结合“选课系统”,讨论该系统部分问题域的解决方法。2.要求学生掌握的基本概念、理论、技能通过本章的学习,学生可以从数据库表中检索出自己需要的数据。3.教学重点和难点教学重点是select语句的使用。教学难点是全文检索的使用。(六)视图与触发器主要教学内容(1)视图主要知识点:创建视图;查看视图的定义;视图在“选课系统”中的应用;视图的作用;删除视图;检查视图;local与cascade检查视图。(2)触发器主要知识点:准备工作;使用触
12、发器实现检查约束;使用触发器维护冗余数据;使用触发器模拟外键级联选项;查看触发器的定义;删除触发器;使用触发器的注意事项。(3)临时表主要知识点:临时表的创建、查看与删除;“选课系统”中临时表的使用;使用临时表的注意事项。(4)派生表(derived table) (5)子查询、视图、临时表、派生表教学要求1.教学基本要求,数据库开发人员可以将功能复杂、使用频繁的MySQL代码封装成MySql视图。2.要求学生掌握的基本概念、理论、技能通过本章的学习,学生可以掌握如何使用视图简化数据查询操作,以及如何使用触发器实现表记录的自动维护、表之间复杂关系的自动维护。3.教学重点和难点教学重点是视图、触
13、发器、临时表、派生表的使用。 教学难点是子查询、视图、临时表、派生表的区别和联系。(七)存储过程与游标主要教学内容(1) 存储过程主要知识点: 创建存储过程的语法格式;存储过程的调用;“选课系统”的存储过程查看存储过程的定义;删除存储过程;存储过程与函数的比较。(2) 错误触发条件和错误处理主要知识点:自定义错误处理程序;自定义错误触发条件;自定义错误处理程序说明。 (3) 游标主要知识点:使用游标;游标在“选课系统”中的使用。 (4) 预处理SQL语句主要知识点:预处理SQL语句使用步骤;“选课系统”中预处理SQL语句的使用; 处理SQL语句的复杂应用;静态SQL语句与预处理SQL语句;存储
14、程序的说明。教学要求1.教学基本要求MySQL存储过程实现了比MySQL函数更为强大的功能,数据库开发人员可以将功能复杂、使用频繁的MySQL代码封装成MySQL存储过程,从而提高MySQL代码的重用性。本章主要讲解如何在MySQL中使用存储过程,内容包括存储过程的创建以及调用、MySQL异常处理机制、游标以及MySQL预处理等方面的知识,并结合“选课系统”讲解这些知识在该系统中的应用,最后本章对存储程序做了总结。2.要求学生掌握的基本概念、理论、技能通过学习,学生可以编写更为复杂的业务逻辑代码,为今后设计更为复杂的应用系统奠定坚实的基础。3.教学重点和难点教学重点是存储过程、错误触发条件、游
15、标和预处理SQL语句的使用。(八)事务机制与锁机制主要教学内容(1)事务机制主要知识点:事务机制的必要性;关闭MySQL自动提交;回滚;提交;事务;保存点 ;“选课系统”中的事务。(2)锁机制主要知识点:锁机制的必要性;MySQL锁机制的基础知识;MyISAM表的表级锁;InnoDB表的行级锁;“选课系统”中的行级锁;InnoDB表的意向锁;InnoDB行级锁与索引之间的关系;间隙锁与死锁;死锁与锁等。(3)事务的ACID特性主要知识点:事务的ACID特性;事务的隔离级别与并发问题;设置事务的隔离级别 ;使用间隙锁避免幻读现象;事务与锁机制注意事项。教学要求1.教学基本要求数据库与文件系统的最
16、大区别在于数据库实现了数据的一致性以及并发性。对于数据库管理系统而言事务机制与锁机制是实现数据库一致性与并发性的基石。本章探讨了数据库中事务机制与锁机制的必要性,讲解了如何在数据库中使用事务机制与锁机制实现数据的一致性以及并发性,并结合“选课系统”讲解事务机制与锁机制在该系统中的应用。2.要求学生掌握的基本概念、理论、技能通过本章的学习,希望学生了解事务机制与锁机制的重要性,掌握使用事务机制以及锁机制实现多用户并发访问的相关知识。3.教学重点和难点教学重点是如何理解事务机制以及锁机制。 教学难点是事务的ACID特性。(九)网上选课系统的开发主要教学内容(1)PHP预备知识主要知识点:为何选用B
17、/S结构以及PHP脚本语言;PHP脚本语言概述;PHP脚本程序的工作流程;Web服务器的部署;注意事项。(2)软件开发生命周期SDLC (3)网上选课系统的系统规划主要知识点:网上选课系统的目标;网上选课系统的可行性分析;网上选课系统的项目进度表;网上选课系统的人员分工。(4)网上选课系统的系统分析主要知识点:网上选课系统的功能需求分析;网上选课系统的非功能需求分析。(5)网上选课系统的系统设计 (6)网上选课系统的系统实施主要知识点:准备工作;制作PHP连接MySQL服务器函数;制作PHP权限系统函数;首页index.php的开发;教师注册模块的开发;登录模块的开发;注销模块的开发;添加班级
18、模块的开发;学生注册模块的开发;密码重置模块;申报课程模块;课程列表显示模块;审核申报课程;取消已审核课程;浏览自己申报的课程;删除课程;学生选修或者调换已经审核的课程;查看自己选修的课程;取消选修课程;查看课程的学生信息列表;查看选修人数少于30人的课程信息。(7)界面设计与MVC模式 (8)网上选课系统的测试教学要求1.教学基本要求结合之前章节开发的“选课系统”数据库,借助软件工程的思想,本章选用PHP脚本语言开发网上选课系统。2.要求学生掌握的基本概念、理论、技能通过本章的讲解,学生更清楚地了解应用程序的开发流程以及数据库在应用程序中举足轻重的地位。3.教学重点和难点教学重点是新闻发布系
19、统系统编码实施、软件开发生命周期SDLC。 教学难点是网上选课系统的系统实施。三、课程学时分配序号教学内容(按课题或章节为内容)学时其中讲授实践其他1第一章 数据库设计概述32102第二章 MySQL基础知识32103第三章 MySQL表结构的管理32104第四章 表记录的操作32105第五章 表的检索53206第六章 视图与触发器32107第七章 存储过程与游标32108第八章 事务机制与锁机制32109第九章 网上选课系统的开发624010合计3219130四、说明(一)课程开设的基本条件1在掌握MySQL基本知识的基础上,以能力培养为主线,结合实际开发案例,突出主要知识点,避免泛泛而谈。2通过课堂实例练习,提高数据库开发能力,学以致用。3通过上机实践,把理论知识与实践相结合,提高学生学习兴趣。4引导学生创新、创意;对基本教学案例的功能加以扩展,激发创新意识。(二)主要参考书1.教材:MySQL数据库基础与实例教程主编:孔祥盛 出版社:人民邮电出版社 出版时间:2014年。2.参考书:PHP编程基础与实例教程主编:孔祥盛 出版社:人民邮电出版社 出版时间:2011年。 深入浅出MySQL数据库开发、优化与管理维护主编:唐汉明等 出版社:人民邮电出版社。(三)考核方式及成绩评定1.出勤和课堂参与20%2.知识考察80%专心-专注-专业
限制150内