MySQL数据库基础与实例教程全部课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《MySQL数据库基础与实例教程全部课件.ppt》由会员分享,可在线阅读,更多相关《MySQL数据库基础与实例教程全部课件.ppt(715页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、孔祥盛孔祥盛MySQLMySQL数据库基础与实例教程数据库基础与实例教程 之之资源说明资源说明1 12 23 34 4本书的特点本书的特点说在前面的话说在前面的话本书的提供的资源本书的提供的资源浅谈学习方法浅谈学习方法5 5解决问题方法解决问题方法6 6小结小结内内 容容 一一 览览 教教师师教教学学好好比比导导演演拍拍摄摄一一部部电电影影,不不仅仅需需要要演演员员(学学生生)的的配配合合,还还需需要要挑挑选选好好的的剧剧本(书籍)。本(书籍)。好好的的剧剧本本可可以以让让导导演演(教教师师)、所所有有演演员员(学学生生)更更顺顺利利地地融融入入剧剧情情,不不仅仅可可以以节节省省导导演演(教教
2、师师)的的精精力力,缩缩短短拍拍摄摄周周期期,节节省省拍拍摄摄成成本本,还还可可以以让让所所有有演演员员(学学生生)真真正正地成为地成为“剧情剧情”中的主角。中的主角。1.1.说在前面的话说在前面的话本书使用量身定制的案例全面讲解本书使用量身定制的案例全面讲解MySQL基础知识以及基础知识以及MySQL5.6新特性,新特性,InnoDB全全文检索、触发器、存储过程、函数、事务、文检索、触发器、存储过程、函数、事务、锁等概念,全部融入该案例。锁等概念,全部融入该案例。本书尽量将抽象问题形象化、图形化,复本书尽量将抽象问题形象化、图形化,复杂问题简单化。即便读者没有任何数据库基杂问题简单化。即便读
3、者没有任何数据库基础,也丝毫不会影响数据库知识的学习。础,也丝毫不会影响数据库知识的学习。2.2.本书的特点本书的特点曾曾经经看看到到有有一一种种极极端端的的说说法法:中中国国不不缺缺好好的的导导演演、好好的的演演员员,而而是是缺缺少少好好的的剧剧本本,对对于学习亦是如此。于学习亦是如此。笔笔者者一一直直认认为为:中中国国不不缺缺乏乏好好的的导导演演(教教师师),也也不不缺缺乏乏好好的的演演员员(学学生生),缺缺乏乏的的是是能能够够让让导导演演(教教师师)和和演演员员(学学生生)快快速速地融入剧情的剧本(教材)。地融入剧情的剧本(教材)。1.1.说在前面的话说在前面的话对于学习,亦是如此。学习
4、数据库,尤其对于学习,亦是如此。学习数据库,尤其是学习是学习MySQL,笔者试图编写这样一部,笔者试图编写这样一部“剧剧本本”:让教师、学生快速地融入:让教师、学生快速地融入“剧情剧情”,并且变并且变“学生被动学习学生被动学习”为为“学生主动学习学生主动学习”。笔笔者者相相信信:MySQL数数据据库库基基础础与与实实例例教教程程就就是是一一本本能能够够满满足足导导演演(教教师师)、演演员员(学学生生)拍拍摄摄要要求求(教教学学要要求求)的的剧剧本本(教教材)。材)。1.1.说在前面的话说在前面的话本书选择的案例易于理解、开发,非常适本书选择的案例易于理解、开发,非常适合教学。合教学。本书使用该
5、案例,通过本书使用该案例,通过10个章节的内容,个章节的内容,贯穿贯穿MySQL所有知识点,内容编排一气呵成,所有知识点,内容编排一气呵成,章节之间循序渐进,内容不冲突、不重复、章节之间循序渐进,内容不冲突、不重复、不矛盾。不矛盾。2.2.本书的特点本书的特点为了能让读者将所有的时间、精力放在为了能让读者将所有的时间、精力放在MySQL知识点的学习上,本书使用尽可能少的知识点的学习上,本书使用尽可能少的数据库表讲解数据库表讲解MySQL的所有知识点。的所有知识点。本书所使用的表不超过本书所使用的表不超过10张,经常使用的表张,经常使用的表不超过不超过5张,使用张,使用5张表讲解张表讲解MySQ
6、L几乎所有的几乎所有的知识点,很大程度上可以减轻教师、学生的负知识点,很大程度上可以减轻教师、学生的负担。但同时也为笔者构思本书的知识框架带来担。但同时也为笔者构思本书的知识框架带来不少挑战,也希望读者理解笔者一片苦心。不少挑战,也希望读者理解笔者一片苦心。2.2.本书的特点本书的特点本本书书注注重重软软件件工工程程在在数数据据库库开开发发过过程程中中的的应应用用。数数据据库库初初学学者者通通常常存存在在致致命命的的缺缺陷陷:重重开开发发,轻轻设设计计。开开发发出出来来的的数数据据库库往往往往成成了倒立的金字塔,头重脚轻。了倒立的金字塔,头重脚轻。真真正正的的数数据据库库开开发发,首首先先强强
7、调调的的是是设设计计,其其次次是是开开发发。正正因因为为如如此此,本本书书将将数数据据库库设设计计的的内内容容进进行行详详细细地地讲讲解解,并并且且在在本本书书第第一一章进行了详细讲解。章进行了详细讲解。2.2.本书的特点本书的特点撰撰写写本本书书时时,为为了了向向读读者者还还原原笔笔者者真真实实的的开开发发过过程程,本本书书在在内内容容组组织织上上使使用用、保保留留了了一一定定数数量量的的截截图图显显示示执执行行结结果果,有有些些截截图图至至关关重重要要,读读者者甚甚至至必必须须从从截截图图中中得得到到一一些些结结论论。当当然然这这些些截截图图无无疑疑增增加加了了本本书书的的版版面面,希望读
8、者谅解。希望读者谅解。2.2.本书的特点本书的特点截至目前,本书提供的资源都是截至目前,本书提供的资源都是免费免费资源资源其中包括:所有其中包括:所有安装程序安装程序、PPT课件课件、教教学大纲学大纲、MySQL源代码源代码、PHP源代码源代码。其它资源(例如其它资源(例如教学计划教学计划、视频视频等)正在等)正在开发中,根据需要,这些资源也将开发中,根据需要,这些资源也将免费免费向读向读者提供。读者也可以时刻者提供。读者也可以时刻关注本书资源更新关注本书资源更新情况。情况。3.3.本书提供的资源本书提供的资源本书提供的资源可以到人民邮电出版社教本书提供的资源可以到人民邮电出版社教学服务与资源
9、网下载。学服务与资源网下载。出版社网址:出版社网址:http:/ 之之数据库设计概述数据库设计概述1 12 23 3 本章抛开本章抛开MySQLMySQL讲讲解关系数据库设计的解关系数据库设计的相关知识,以相关知识,以“选课选课系统系统”为例,讲解为例,讲解“选课系统选课系统”数据库的数据库的设计流程。设计流程。4 4内容一览内容一览 数据库设计的相关知识数据库设计的相关知识数据库概述数据库概述 E-RE-R图图关系数据库设计关系数据库设计1 12 23 3 简单地说:数据简单地说:数据库(库(DatabaseDatabase或或DBDB)是)是存储、管理数据的容器;存储、管理数据的容器;严格
10、地说:数据严格地说:数据库是库是“按照某种数据结构按照某种数据结构对数据进行组织、存储和对数据进行组织、存储和管理的容器管理的容器”。总结:数据永远是总结:数据永远是数据库的核心。数据库的核心。关系数据库关系数据库关系数据库管理系统关系数据库管理系统结构化查询语言结构化查询语言SQLSQL1.1 1.1 数据库概述数据库概述 1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统 通过通过“数据库管理系统数据库管理系统”,数据库用,数据库用户可以轻松地实现数据库容器中各种数据库户可以轻松地实现数据库容器中各种数据库对象的访问(增、删、改、查等操作),并对象的访问(增、删、改、查等操作),
11、并可以轻松地完成数据库的维护工作(备份、可以轻松地完成数据库的维护工作(备份、恢复、修复等操作)恢复、修复等操作)数据库用户无法直接通过操作系统获取数据库用户无法直接通过操作系统获取数据库文件中的具体内容;数据库文件中的具体内容;数据库管理系统通过调用操作系统的进数据库管理系统通过调用操作系统的进程管理、内存管理、设备管理以及文件管理程管理、内存管理、设备管理以及文件管理等服务,为数据库用户提供管理、控制数据等服务,为数据库用户提供管理、控制数据库容器中各种数据库对象、数据库文件的接库容器中各种数据库对象、数据库文件的接口。口。1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统添加标
12、题添加标题添添加加标标题题层次模型层次模型面向对象模型面向对象模型网状模型网状模型关系模型关系模型数据库管理数据库管理系统常用的系统常用的数学模型数学模型 添加标题添加标题 基于基于“关系模型关系模型”的数据库管理系统称为关系数据库的数据库管理系统称为关系数据库管理系统(简称为管理系统(简称为RDBMSRDBMS)。随着关系数据库管理系统的)。随着关系数据库管理系统的日臻完善,目前关系数据库管理系统已占据主导地位。日臻完善,目前关系数据库管理系统已占据主导地位。1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统https:/ 2月数据库流行度排行榜月数据库流行度排行榜截至目前,截至目
13、前,MySQLMySQL已经成功逆袭!已经成功逆袭!1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统20142014年年3 3月数据库流行度排行榜月数据库流行度排行榜1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统20142014年年4 4月数据库流行度排行榜月数据库流行度排行榜1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统开源开源MySQLMySQL源代源代码免费下载码免费下载简单简单MySQLMySQL体积体积小小,便于安,便于安装装MySQLMySQL性能性能足够与商业足够与商业数据库媲美数据库媲美功能强大功能强大MySQLMySQL提供提供的功能足
14、够的功能足够与商业数据与商业数据库媲美库媲美逆逆袭袭原原因因性能优越性能优越1.1.1 1.1.1 关系数据库管理系统关系数据库管理系统 关系数据库中所谓的关系数据库中所谓的“关系关系”,实质上是一,实质上是一张二维表。请看下面的课程表。张二维表。请看下面的课程表。字段名(列名)字段名(列名)第第1 1个字段(列)个字段(列)第第1 1条记录条记录第第2 2条记录条记录第第3 3条记录条记录第第4 4条记录条记录第第5 5条记录条记录第第3 3个字段(列)个字段(列)第第2 2个字段(列)个字段(列)第第4 4个字段(列)个字段(列)1.1.2 1.1.2 关系数据库关系数据库 作为数据库中最
15、为重要的数据库对象,数据作为数据库中最为重要的数据库对象,数据库表的设计过程库表的设计过程并非一蹴而就并非一蹴而就,上述课程表根本,上述课程表根本无法满足无法满足“选课系统选课系统”的功能需求。的功能需求。事实上,数据库表的设计过程并非如此简单,事实上,数据库表的设计过程并非如此简单,本章的重点就是讨论如何设计结构良好的数据库本章的重点就是讨论如何设计结构良好的数据库表。表。1.1.2 1.1.2 关系数据库关系数据库 结构化查询语言(结构化查询语言(Structured Query Structured Query LanguageLanguage或简称为或简称为SQLSQL)是一种应用最为
16、广泛的关)是一种应用最为广泛的关系数据库语言,该语言定义了操作关系数据库的系数据库语言,该语言定义了操作关系数据库的标准语法,几乎所有的关系数据库管理系统都支标准语法,几乎所有的关系数据库管理系统都支持持SQLSQL。1.1.3 1.1.3 结构化查询语言结构化查询语言SQL SQL 学习重点学习重点1 12 23 3 数据库设计是一个数据库设计是一个“系系统工程统工程”,要求数据库开发,要求数据库开发人员:人员:熟悉熟悉“商业领域商业领域”的商的商业知识。业知识。利用利用“管理学管理学”的知识的知识与其他开发人员进行有效沟与其他开发人员进行有效沟通。通。掌握一些数据库设计辅掌握一些数据库设计
17、辅助工具。助工具。数据库设计辅助工具数据库设计辅助工具商业知识和沟通技能商业知识和沟通技能“选课系统选课系统”概述概述4 45 5定义问题域定义问题域编码规范编码规范1.2 1.2 数据库设计的相关知识数据库设计的相关知识 数据库技术解决的是数据库技术解决的是“商业领域商业领域”的的“商业问题商业问题”。数据库开发人员有必要成为该数据库开发人员有必要成为该“商业领商业领域域”的专家,与其他开发人员(包括最终用的专家,与其他开发人员(包括最终用户)一起工作,继而使用数据库技术解决该户)一起工作,继而使用数据库技术解决该“商业领域商业领域”的的“商业问题商业问题”。1.2.1 1.2.1 商业知识
18、和沟通技能商业知识和沟通技能1.2.2 1.2.2 数据库设计辅助工具数据库设计辅助工具工具工具模型模型技术技术业务模型业务模型面向对象分析和设计技术面向对象分析和设计技术结构化分析和设计技术结构化分析和设计技术软件测试技术软件测试技术关系数据库设计技术关系数据库设计技术 ErwinErwinPowerDesignerPowerDesignerRational RoseRational RoseVisio Visio VC+6.0VC+6.0Visual studioVisual studioEclipseEclipseNetBeans NetBeans 单元测试工具单元测试工具功能测试工具功
19、能测试工具性能测试性能测试 工具工具程序流程图程序流程图 DFD DFD 时序图时序图 状态图状态图CASECASE工具工具IDEIDE工具工具测试工具测试工具数据模型数据模型类图类图E-RE-R图图 限于篇幅,在不限于篇幅,在不影响影响“选课系统选课系统”核核心功能的基础上,适心功能的基础上,适当地对该系统进行当地对该系统进行“定制定制”、“扩展扩展”以以及及“瘦身瘦身”。1.2.3 1.2.3“选课系统选课系统”概述概述 定义问题域是数定义问题域是数据库设计过程中重要据库设计过程中重要的活动,它的目标是的活动,它的目标是准确定义要解决的商准确定义要解决的商业问题。业问题。“选课系统选课系统
20、”亟亟需解决的需解决的“商业商业”问问题有哪些?题有哪些?1.2.4 1.2.4 定义问题域定义问题域 在编程的时候会考虑代码的可读性吗?你觉在编程的时候会考虑代码的可读性吗?你觉得代码可读性是需要考虑的问题吗?得代码可读性是需要考虑的问题吗?1.1.代码不仅要自己能读懂,还要别人也能看懂代码不仅要自己能读懂,还要别人也能看懂?2.2.尽量做到可读,但时间紧任务重的时候就顾尽量做到可读,但时间紧任务重的时候就顾不上了?不上了?3.3.代码只要自己能读懂就可以了?代码只要自己能读懂就可以了?4.4.代码写完就完了,不用管以后是否能读懂?代码写完就完了,不用管以后是否能读懂?5.5.不知道,没有想
21、过这个问题?不知道,没有想过这个问题?1.2.5 1.2.5 编码规范编码规范 请记住:尽最大请记住:尽最大努力把方便留给别努力把方便留给别人和将来的自己。人和将来的自己。建议大家遵循本建议大家遵循本书罗列的常用编程书罗列的常用编程规范!规范!1 12 23 3关系关系实体和属性实体和属性E-RE-R图的设计原则图的设计原则 E-R图设计的质量直接决定了关系数据库设计的质量。1.3 E-R1.3 E-R图图 实体不是某一个具实体不是某一个具体事物,而是某一种类体事物,而是某一种类别所有事物的统称。别所有事物的统称。属性通常用于表示属性通常用于表示实体的某种特征,也可实体的某种特征,也可以使用属
22、性表示实体间以使用属性表示实体间关系的特征关系的特征实体实体属性属性属性属性1.3.11.3.1 实体和属性实体和属性 E-R E-R图中的关系用于图中的关系用于表示实体间存在的联系,表示实体间存在的联系,在在E-RE-R图中,实体间的关图中,实体间的关系通常使用一条线段表系通常使用一条线段表示。示。E-R E-R图中实体间的关图中实体间的关系是双向的。系是双向的。关系关系关系关系1.3.21.3.2 关系关系 基数表示一个实体基数表示一个实体到另一个实体之间关联到另一个实体之间关联的数目,基数是针对关的数目,基数是针对关系之间的某个方向提出系之间的某个方向提出的概念,基数可以是一的概念,基数
23、可以是一个取值范围,也可以是个取值范围,也可以是某个具体数值某个具体数值基数基数可选可选基数基数强制强制1.3.21.3.2 关系关系 元表示关系所关联元表示关系所关联的实体个数的实体个数。二元关系二元关系二元关系二元关系一元关系一元关系1.3.21.3.2 关系关系 使用关联使用关联(AssociationAssociation)表示实体)表示实体间关系的间关系的属性。属性。关联关联关联关联1.3.21.3.2 关系关系1 12 23 3实体是一个单独的个体,不能存实体是一个单独的个体,不能存在于另一个实体中,成为另一个在于另一个实体中,成为另一个实体的属性。实体的属性。属性应该存在于、且只
24、存在于某属性应该存在于、且只存在于某一个地方(实体或者关联)。一个地方(实体或者关联)。同一个实体在同一个同一个实体在同一个E-RE-R图内,仅图内,仅出现一次。出现一次。数据库开发人数据库开发人员通常采用员通常采用“一事一事一地一地”的原则从系的原则从系统的功能描述中抽统的功能描述中抽象出来象出来E-RE-R图。图。1.3.3 E-R1.3.3 E-R图的设计原则图的设计原则1 1为为E-RE-R图中的每个实体建立一张表。图中的每个实体建立一张表。2 2为每张表定义一个主键(如果需要,可以向表为每张表定义一个主键(如果需要,可以向表添加一个没有实际意义的字段作为该表的主键)添加一个没有实际意
25、义的字段作为该表的主键)3 3增加外键表示一对多关系。增加外键表示一对多关系。4 4建立新表表示多对多关系。建立新表表示多对多关系。5 5为字段选择合适的数据类型。为字段选择合适的数据类型。6 6定义约束条件(如果需要)。定义约束条件(如果需要)。7 7评价关系的质量,并进行必要的改进。评价关系的质量,并进行必要的改进。1.4 1.4 关系数据库设计关系数据库设计student(student(student_nostudent_no,student_name,student_contact,student_name,student_contact)course(course(course_n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MySQL 数据库 基础 实例教程 全部 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内