MySQL数据库整本书课件完整版电子教案(最新)_第1页
MySQL数据库整本书课件完整版电子教案(最新)_第2页
MySQL数据库整本书课件完整版电子教案(最新)_第3页
MySQL数据库整本书课件完整版电子教案(最新)_第4页
MySQL数据库整本书课件完整版电子教案(最新)_第5页
已阅读5页,还剩224页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MySQL数据库单元一数据模型的规划与设计 项目知识要点与目标项目知识要点知识能力目标学时1.1 任务1 设计数据库关系模型1.1.1 数据模型1.1.2 概念模型1.1.3 E-R图的设计1.1.4 数据库关系模型的建立1.2 任务2 数据库设计规范化1.2.1 关系型数据库范式理论 1.2.2 数据库规范化实例 1.2.3 综合实例 PetStore数据库的设计 【情境】:数据库分析、设计【职业岗位】:数据库管理员、程序员【典型工作任务】: 对数据库进行分析,建立E-R图,关系模型【技能要求】: 1、设计数据库关系模型2、数据库设计规范化【知识要求技能训练】:1、识记数据库的相关知识2、数

2、据库设计的相关知识4项目实训一创建“员工管理系统”的数据模型2【学习情境】:Petstore数据库结构设计 Petstore(宠物商店) 是 SUN 公司推出展示Java web 应用开发技术的网上商城示范项目。功能需求分析:实现前台用户购物和后台管理两大部分功能。前台购物为顾客服务,客户输入用户名、密码等信息进行注册,注册成功后就可以进行按产品的分类浏览网站,当用户看中某个宠物时,可以加入用户的购物车,当购物选择完毕时,用户可以对购物车中的物品进行预订,系统生成相应的订单。后台商品管理为管理员所用,管理员可以对商品进行分类,并为每个分类增加新商品以及对现有商品完成修改、删除等操作。要进行Pe

3、tstore 电子商务系统的开发,需要运用E-R图等数据库设计工具,合理规划与设计Petstore数据库。修建茅屋需要设计吗?修建大厦需要设计吗?结论:当数据库比较复杂时我们需要设计数据库为什么需要设计数据库 数据库设计就是将数据库中的数据对象以及这些数据对象之间关系进行规划和结构化的过程任务一 设计数据库关系模型 为什么需要设计数据库良好的数据库设计节省数据的存储空间能够保证数据的完整性方便进行数据库应用系统的开发糟糕的数据库设计:数据冗余、存储空间浪费内存空间浪费数据更新和插入的异常数据冗余编号姓名年龄民族部门部门位置1王涛33汉族人事管理部行政楼3012李梅27汉族人事管理部行政楼301

4、存在冗余为减少数据查找的麻烦,允许数据有一定的冗余数据冗余:指数据重复的现象1127李梅21133王涛1部门编码民族编码年龄姓名编号回族2汉族1民族民族编码市场营销部2人事管理部1部门部门编码行政楼402行政楼301部门位置数据完整性存在不正确、不准确的数据,数据库“失去了完整性”编码姓名地址销售代码11阿兰海淀黄庄菜园子AC09112东方求败海淀龙王庙鬼楼AC04315张无忌中关村大街3-201AC01113菜鸟特注海淀龙王庙树林AC04114赵可海淀龙王庙树林AC01215张无忌中关村大街2-101AC011姓名不同的地址!数据完整性:指数据的准确性1.1 设计数据库关系模型概念模型:把现

5、实世界转换为信息世界的模型,E-R模型实施模型:把信息世界转化为数据世界使用的模型,关系模型现实世界建模信息世界模型转换 规范化数据库世界数 据 库数 据 库事物类事物性质实体集实体属性文件记录数据项实体模型概念模型数据模型实体模型 现实世界客观存在的、可以被描述事物都是“实体”层次模型 按层次模型组织的数据示例 网状模型 按网状模型组织的数据示例 关系模型 按关系模型组织的数据示例 关系模型特点 关系模型中基本数据结构是二维数据表,且必须满足相应的要求:(1)表说明的是关系模型中某一特定的方面或部分的对象及其属性(2)表中的行通常叫做记录或元组,代表具有相同属性的对象中的一个(3)表中的列通

6、常叫做字段或属性,代表存储对象的共有的属性(4)数据表之间的关联通过“键”来实现的,键分为主键和外键两种。(5)表必须符合某些特定条件信息原则:每个单元只能存贮一条数据;列有唯一性的名称,贮存在列下的数据必须具有相同数据类型;列没有顺序;每行数据是唯一的;行没有顺序;实体完整性原则,即主键不能为空;引用完整性原则,即外键不能为空;1.1.2概念模型建模步骤:收集信息: 与该系统有关人员进行交流、坐谈,充分理解数据库需要完成的任务标识对象(实体Entity) 标识数据库要管理的关键对象或实体 标识每个实体的属性(Attribute)标识对象之间的关系(Relationship)建模:把现实世界转

7、换为信息世界的模型,E-R模型建模实例:学生选课系统建模张三选修李四王五计算机基础英语MySQL数据库个体学号总学分专业名出生日期性别姓名共性学生实体抽象抽象实体共性课程课程号学分学时开课学期类别课程名关联选课成绩个体主码(关键字) 主码:也叫关键字,实体集中的属性或最小属性组合的值能唯一标识其对应实体,则将该属性或属性组合称为码。对于每一个实体集,可指定一个码为主码。学生和课程实体集属性描述概念结构设计概念结构设计- E-R图方法实体关系图:简记E-R图,是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。实体型(Entity):具有相同的特征和性质的集合体

8、,用实体名及其属性名来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三、学生李四都是实体属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。联系(Relationship): 数据对象彼此之间相互连接的方式称为联系,也称为关系。E-R模型E-R图的组成要素及其画法实体名联系名属性名实体表示属性表示联系表示绘制E-R图映射基数一对一X X X X Y Y Y Y X X X X Y Y Y Y 一对多X X X X Y Y Y 多对一X X

9、X X Y Y Y Y 多对多客户订单产品 M N 1 N一对一(1:1)联系实体间不同联系情况的E-R图表示法一对一(1:1)联系:1主任系管理1姓名年龄学历编号系编号系名任职时间例:某学院有若干个系,每个系只有一个主任。则主任和系之间是一对一的关系。主任和系的属性分别如下: 主任编号,姓名,年龄,学历; 系系编号,系名 主任和系之间是一个管理关系主任与系之间的一对一的联系一对多(1:m)的联系例: 在某仓库管理系统中,有两个实体集:仓库和商品。仓库用来存放商品,且规定一类商品只能存放在一个仓库中,一个仓库可以存放多件商品。仓库和商品的属性分别如下: 仓库仓库号,地点,面积 商品商品号,商品

10、名,价格 在存放联系中要反映出存放商品的数量。 1仓库商品存放n地点面积仓库号商品号价格数量商品名一对多(1:m)的联系仓库和商品之间一对多的联系多对多(m:n)联系:假设在某教务管理系统中,一个教师可以上多门课,一门课也可以由多个老师去上。教师和课程可用以下属性来描述: 教师教师号,教师名,职称 课程课程号,课程名,班级 在“讲授”联系中应能反映出教师的授课质量。 m教师课程讲授n教师名职称教师号课程号班级质量课程名多对多(m:n)联系教师和课程之间的多对多联系1.1.3 E-R图设计实例【例1.1】 网络图书销售系统处理会员图书销售。简化的业务处理过程为:网络销售的图书信息包括:图书编号,

11、图书类别,书名,作者,出版社,出版时间,单价,数量,折扣,封面图片等;用户需要购买图书必须先注册为会员,提供身份证号,会员姓名,密码,性别,联系电话,注册时间等信息;系统根据会员的购买订单形成销售信息,包括订单号,身份证号,图书编号,订购册数,订购时间,是否发货,是否收货,是否结清。 请画出网络图书销售数据库E-R图。【例1.1】 E-R图设计步骤1.确定实体集: 网络图书销售系统中有两个实体集:图书和会员2.确定实体集属性及主码: (1)实体集会员属性有:身份证号,会员姓名,性别,联系电话,注册时间,密码。 会员实体集中可用身份证号来唯一标识各会员,所以主码为身份证号。(2)实体集图书属性有

12、:图书编号,图书类别,书名,作者,出版社,出版时间,单价,数量,折扣,封面图片。 图书实体集中可用图书编号来唯一标识图书,所以主码为图书编号。3. 确定实体集之间的联系:图书销售给会员时图书与会员建立关联, 联系“销售”的属性有:订购册数,订购时间,是否发货,是否收货,是否结清。 为了更方便标识销售记录,可添加订单号作为该联系的主码。4.确定联系关系: 因为一个会员可以购买多种图书,一种图书可销售各多个会员,所以这是一种多对多(m:n)的联系。 根据以上分析画出的网络图书销售数据库E-R图网络图书销售数据库E-R图E-R图设计步骤 对于复杂的系统,E-R图设计通常都应经过以下两个阶段: (1)

13、针对每一用户画出该用户信息的局部ER图,确定该用户视图的实体、属性和联系。需注意的是:能作为属性的就不要作为实体,这有利于ER图的简化。 (2)综合局部ER图,生成总体ER图。在综合过程中,同名实体只能出现一次,还要去掉不必要的联系,以便消除冗余。一般来说,从总体ER图必须能导出原来的所有局部视图,包括实体、属性和联系。复杂E-R图设计实例 【例1.2】 工厂物流管理中的涉及雇员、部门、供应商、原材料、成品和仓库等实体,并且存在以下关联: (1)一个雇员只能在一个部门工作,一个部门可以有多个雇员。(2)每一个部门可以生产多种成品,但一种成品只能由一个部门生产。(3)一个供应商可以供应多种原材料

14、,一种原材料也可以由多个供应商供货。(4)购买的原材料放在仓库中,成品也放在仓库中。一个仓库可以存放多种产品,一种产品也可以存放在不同的仓库中。(5)各部门从仓库中提取原料,并将成品放在仓库中。一个仓库可以存放多个部门的产品,一个部门的产品也可以存放在不同的仓库中。 画出简单的工厂物流管理系统E-R模型。局部E-R图1、找出工厂物流管理系统实体集:分别是雇员、部门、成品、供应商、原材料和仓库。2.从生产的角度,根据(1)和(2)画出雇员、部门和成品三个实体间的初步联系3.从供应的角度,根据(3)画出供应商和原材料两个实体间的初步联系,4.为是问题简化,实体的属性先不画出。全局E-R图5.从仓储

15、的角度,根据(4)和(5)画出仓库与各实体之间的联系,最终得到工厂物流管理系统的E-R图6.实体联系中有多个数量属性,分别用数量1,数量2以区分课堂练习7.各实体的属性如下,请进一步完成工厂物流E-R图雇员部门供应商原材料和成品仓库雇员号,姓名,性别,职称,工资,住址部门号,名称,电话编号,名称,联系人,电话,银行账号编号,名称,规格,单价,数量库号,地址,电话E-R图设计中常见问题分析【例1.3】 画出出版社和图书的E-R图。 1.实体与联系分析:一个出版社可以出版多本图书,一本图书只能由一个出版社出版,出版社和图书之间就是一对多的关系。 2.属性与主码:出版社实体有社名、地址、邮编、网址、

16、联系电话等属性。为了建立出版社与图书实体一对多的联系,还应该有一个出版社代码来唯一标识出版社; 图书实体有出版社、书名、作者、价格等属性。为了唯一标识图书,还应设置书号属性。 根据以上分析,画出出版社与图书的E-R图如下:图书出版E-R图案例分析 出版社和图书的E-R图分析: (1)出版社和图书的关系:出版社通过出版与图书建立关联。一个出版社可以出版多本图书,一本图书一般由一个出版社出版,出版社和图书之间就是一对多的关系。(2)出版社实体有社名、地址、邮编、网址、联系电话等属性,为了建立出版社与图书实体一对多的联系,还应该有一个出版社代码来唯一标识出版社(3)图书实体有出版社代码、书名、作者、

17、价格等属性。为了唯一标识图书,还应设置书号属性。图书出版E-R图问题思考(1)1、怎么标识书号(选取关键字)?为了管理方便,国际上规定:全世界的每本书都应该有唯一的编号,这个号码叫做ISBN号,俗称书号。ISBN号码又分为几个子域,每个域的代码表示不同的含义。例如,某本书的书号是7-302-06610-8,它有四个子域,域之间用-分隔。第一个子域7代表中国大陆出版的图书;第二个子域为出版社的代码,如302代表清华大学出版社;后面两个子域是出版社的内部分类编号,不同的出版社可以自己规定,各不相同,从而保证了图书书号的全球唯一性。因此,用ISBN书号作为图书的唯一标识似乎是非常合理的。但是,有些出

18、版社用一个书号出版多本图书,有些书或者资料根本没有书号。虽然这么做并不正规,甚至是违法的,但这种现象毕竟是客观存在的。所以,在设计实际数据库系统的时候,一般不能以ISBN书号唯一标识图书实体,而应该自己定义唯一标识图书实体的属性。在现实世界中,类似这样的问题有很多,通常需要为实体集定义额外的关键字段。图书出版E-R图问题思考(2)2、有些属性的值如果有多个,该怎么办?如出版社实体应该有电话属性。但一个出版社一般不止一部电话,怎么处理?一种方法是仍使用一个电话属性,只记下一部或几部甚至全部的电话号码即可,这种方法适合于小单位。第二种方法是将电话属性独立出来,建立一个新的电话实体,通过出版社代码属

19、性,建立和出版社的一对多联系,图书出版E-R图问题思考(3)3、一个实体究竟有多少属性?实体的属性可以说是无穷无尽,到底应提取哪些属性,要结合具体应用系统考虑。比如,图书的一般属性有书号、社代码、书名、作者、价格、版次等,如果开发的是书店管理系统,这些属性一般够用了,但如果要开发印刷厂管理系统,还需要增加图书大小(32开还是16开,或具体数字)、印刷纸张规格(60克纸还是70克纸,书写纸还是双面胶)、是否彩印、彩印规格、印刷数量、交货日期等属性。所以,提取一个实体的属性也要具体问题具体分析。 通过出版社图书的例子引出的三个问题,说明建立在现实世界基础上的E-R模型并不只有唯一答案。面向不同的应

20、用、使用不同的方法,可以设计出不同的E-R模型。课堂练习学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。请设计此学校的教学管理的E-R模型。ER模型到关系模型的转换 把E-R图转换为关系模型可遵循如下原则 : (1)对于ER图中每个实体集,都应转换为一个关系,该关系应包括对应实体的全部属性,并应根据

21、关系所表达的语义确定哪个属性或哪几个属性组作为“主关键字”,主关键字用来标识实体。 (2)对于ER图中的联系,情况比较复杂,要根据实体联系方式的不同,采取不同的手段加以实现。(1 : 1)联系的E-R图转换(1)联系单独对应一关系模式,则由联系属性、参与联系的各实体集的主码属性构成关系模式,其主码可选参与联系的实体集的任一方的主码。BJ(班级编号,院系,专业名,人数)BZ(学号,姓名)SY(学号,班级编号)(2)联系不单独对应一关系模式,联系的属性及一方的主码加入另一方实体集对应的关系模式中。 BJ(班级编号,院系,专业名,人数) BZ(学号,姓名,班级编号)或者 BJ(班级编号,院系,专业名

22、,人数,学号) BZ(学号,姓名)(1 : n)联系的E-R图转换(1)联系单独对应一关系模式,则由联系的属性、参与联系的各实体集的主码属性构成关系模式,n端的主码作为该关系模式的主码。BJ(班级编号,院系,专业名,人数)XS (学号,姓名,专业名,性别,出生时间,总学分,备注)SY(学号,班级编号)(2)联系不单独对应一个关系模式,则将联系的属性及1端的主码加入n端实体集对应的关系模式中,主码仍为n端的主码 BJ(班级编号,院系,专业名,人数) XS (学号,姓名,专业名,性别,出生时间,总学分,备注,班级编号)(m : n)联系的E-R图转换 对于(m : n)的联系,单独对应一关系模式,

23、该关系模式包括联系的属性、参与联系的各实体集的主码属性,该关系模式的主码由各实体集的主码属性共同组成。XS (学号,姓名,专业名,性别,出生时间,总学分,备注)KC(课程号,课程名称,类别,开课学期,学时,学分)XS_KC (学号,课程号,成绩)假设A实体集与B实体集是1:1的联系,联系的转换有三种方法: 把A实体集的主关键字加入到B实体集对应的关系中,如果联系有属性也一并加入; 把B实体集的主关键字加入到A实体集对应的关系中,如果联系有属性也一并加入; 建立第三个关系,关系中包含两个实体集的主关键字,如果联系有属性也一并加入。 两实体集间1:n联系 两实体集间1:n联系,可将“一方”实体的主

24、关键字纳入“n方”实体集对应的关系中作为“外部关键字”,同时把联系的属性也一并纳入“n方”对应的关系中。两实体集间m:n联系 对于两实体集间m:n联系,必须对“联系”单独建立一个关系,用来联系双方实体集。该关系的属性中至少要包括被它所联系的双方实体集的“主关键字”,并且如果联系有属性,也要归入这个关系中。 E-R模型到关系模型的转换总结任务二 数据库设计规范化仅有好的RDBMS并不足以避免数据冗余,必须在数据库的设计中创建好的表结构Dr E.F.codd 最初定义了规范化的三个级别,范式是具有最小冗余的表结构。这些范式是:第一范式(1st NF First Normal Fromate)第二范

25、式(2nd NFSecond Normal Fromate)第三范式(3rd NF Third Normal Fromate)关系数据库范式理论是在数据库设计过程中将要依据的准则,数据库结构必须要满足这些准则,才能确保数据的准确性和可靠性。这些准则则被称为规范化形式,即范式。第一范式 (1st NF)BuyerIDCountryCity1342中国英国日本美国北京伦敦东京纽约BuyerIDAddress1234中国北京市 美国纽约市 英国伦敦日本东京市 第一范式的目标是确保每列的原子性如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式(1NF)第二范式 (2nd NF)

26、如果一个关系满足1NF,并且除了主键以外的其他列,都依赖与该主键,则满足第二范式(2NF) 第二范式要求每个表只描述一件事情Orders字段例子订单编号产品编号订购日期价 格001A0012000-2-3$29.00 Orders字段例子订单编号订购日期0012000-2-3Products字段例子产品编号价 格A001$29.00以下是两个同学设计的学生成绩系统的表格,A同学设计成表格1的形式,B同学设计了表格2、3、4三张表格,请问:1、A、B同学哪个的方案更合理?2、如果要他们设计的表格记录5000个同学的10门课成绩,用A同学设计表格要填写多少个数据?用B同学设计的表格要填写多少个数据

27、?3、根据计算结果,哪种设计更节省空间?为什么?学号姓名年龄课程名称成绩学分010101张三20计算机基础802010102李四20计算机基础852010101张三20英语753010102李四20英语853学号姓名年龄010101张三20010102李四20课程名称学分计算机基础2英语3学号课程名称成绩010101计算机基础 80010102计算机基础85010101英语75010102英语85A同学设计表格B同学设计表格课堂练习一张表:6*10*5000=30,0000 个数据三张表:学生表:3*5000=1500 0 课程表:2*10=20 成绩表:3*10*5000=150000三张表

28、合计:15000+20+150000=16,5020A与B方案数据差:30,0000-16,5020 =13,4980 以下是两个同学设计的学生成绩系统的表格,A同学设计成表格1的形式,B同学设计了表格2、3、4三张表格,请问:1、A、B同学哪个的方案更合理?2、如果要他们设计的表格记录5000个同学的10门课成绩,用A同学设计表格要填写多少个数据?用B同学设计的表格要填写多少个数据?3、根据计算结果,哪种设计更节省空间?为什么?学号姓名年龄课程名称成绩学分010101张三20计算机基础802010102李四20计算机基础852010101张三20英语753010102李四20英语853学号姓

29、名年龄010101张三20010102李四20课程名称学分计算机基础2英语3学号课程名称成绩010101计算机基础 80010102计算机基础85010101英语75010102英语85A同学设计表格B同学设计表格课堂练习分析第三范式 (3rd NF)如果一个关系满足2NF,并且除了主键以外的其他列都不传递依赖于主键列,则满足第三范式(3NF) Orders字段例子订单编号订购日期顾客编号0012000-2-3AB001顾客姓名Tony Orders字段例子订单编号订购日期顾客编号0012000-2-3AB001 规范化实例分析(1)假设某建筑公司要设计一个数据库。公司的业务规则概括说明如下:

30、公司承担多个工程项目,每一项工程有:工程号、工程名称、施工人员等公司有多名职工,每一名职工有:职工号、姓名、性别、职务(工程师、技术员)等公司按照工时和小时工资率支付工资,小时工资率由职工的职务决定(例如,技术员的小时工资率与工程师不同)公司定期制定一个工资报表,如图-1所示规范化实例分析(2)工程号工程名称职工号姓名职务小时工资率工时实发工资A1花园大厦1001齐光明工程师6513845.001002李思岐技术员6016960.001004葛宇宏律师60191140.00小计2945.00A2立交桥1001齐光明工程师6515975.001003鞠明亮工人5517935.00小计1910.0

31、0A3临江饭店1002李思岐技术员60181080.001004葛宇洪技术员6014840.00小计1920.00图-1 某公司的工资表规范化实例分析(3)工程号工程名称职工号姓名职务小时工资率工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A1花园大厦1001齐光明工程师6513A1花园大厦1003鞠明亮工人5517A3临江饭店1002李思岐技术员6018A3临江饭店1004葛宇洪技术员6014图-2 某公司的项目工时表规范化实例分析(4)表中包含大量的冗余,可能会导致数据异常:更新异常 例如,修改职工号=1001的职务,则必须修改所有职工号=1001的行

32、添加异常 若要增加一个新的职工时,首先必须给这名职工分配一个工程。或者为了添加一名新职工的数据,先给这名职工分配一个虚拟的工程。(因为主关键字不能为空)删除异常 例如,1001号职工要辞职,则必须删除所有职工号1001的数据行。这样的删除操作,很可能丢失了其它有用的数据采用这种方法设计表的结构,虽然很容易产生工资报表,但是每当一名职工分配一个工程时,都要重复输入大量的数据。这种重复的输入操作,很可能导致数据的不一致性。一张表描述了多件事情,如图-3所示。规范化实例分析(5)工程号工程名称职工号姓名职务小时工资率工时图-3 函数依赖图工程信息员工信息项目工时信息应用第二范式规范化工程号工程名称职

33、工号姓名职务小时工资率工程号职工号工时图-4 应用第二范式工程表员工表项目工时表满足第三范式吗? 应用第三范式规范化工程号工程名称职工号姓名职务职务小时工资率工程号职工号工时工程表员工表职务表工程表课堂练习S公司商品销售管理系统中员工表如下:Employees (员工号,姓名,性别,出生年月,聘任日期,工资,奖金,所在部门和部门主管) 其中奖金按工资*30%+工作年限*50计算而得。请对员工表进行规范化。规范化和性能的关系 为满足某种商业目标,数据库性能比规范化数据库更重要通过在给定的表中添加额外的字段,以大量减少需要从中搜索信息所需的时间通过在给定的表中插入计算列(如成绩总分),以方便查询进

34、行规范化的同时,还需要综合考虑数据库的性能。总结在需求分析阶段,设计数据库的一般步骤为:收集信息标识对象标识每个对象的属性标识对象之间的关系在概要设计阶段和详细设计阶段,设计数据库的步骤为:绘制E-R图将E-R图转换为表格应用三大范式规范化表格为了设计结构良好的数据库,需要遵守一些专门的规则,称为数据库的设计范式。第一范式(1NF)的目标:确保每列的原子性。第二范式(2NF)的目标:确保表中的每列,都和主键相关 。第三范式(3NF)的目标:确保每列都和主键列直接相关,而不是间接相关 。单元二数据库管理环境的建立 项目知识要点与目标项目知识要点知识能力目标学时2.1 任务1 了解数据库的基础知识

35、2.1.1 数据与数据库2.1.2 数据库技术的发展2.1.3数据库管理系统(DBMS)2.1.4 数据库系统的组成2.1.5数据库系统的特点2.1.6常见的关系型数据库管理系统2.1.7结构化查询语言SQL2.2 任务2 安装与配置MySQL数据库2.2.1 MySQL服务器安装2.2.2 AppServ套装软件的安装与配置2.2.3连接与断开服务器【情境】:安装与配置数据库【职业岗位】:数据库管理员、操作员【典型工作任务】:安装MySQL数据库,配置数据库【技能要求】:1、MySQL的安装和配置2、MySQL运行环境测试【知识要求】:1、数据库管理系统组成2、服务器连接、启动和运行2项目实

36、训二安装MySQL数据库2任务一 了解数据库系统的基本概念 数据库服务器响应和提供数据应用程序客户端操作和查询数 据 库应用程序作用:响应操作并显示结果、向数据库请求数据要求:美观、操作简单方便数据库作用:存储数据、检索数据、生成新的数据要求:统一、安全、性能等数据库应用系统为何需要数据库存储数据的方法第一种方法:用大脑来记住数据第二种方法:写在纸上第三种方法:写在计算机的内存中第四种方法:写成磁盘文件数据库系统:管理大量的、持久的、可靠的、共享的数据的工具数据库特点:存储大量数据,方便检索和访问保持数据信息的一致、完整共享和安全通过组合分析,产生新的有用信息数据库的发展史萌芽阶段文件系统使用

37、磁盘文件来存储数据初级阶段第一代数据库出现了层次模型、网状模型的数据库中级阶段第二代数据库关系型数据库和结构化查询语言高级阶段新一代数据库“关系-对象”型数据库层次模型网状模型数据库 订单 客户 产品 产品数据库表数据库就是“数据”的“仓库”数据库由表、关系以及操作对象组成数据存放在表中数 据 表存储过程视 图. 所谓数据库(Database, DB),是将数据按一定的数据模型组织、描述和存储,具有较小的冗余度,较高的数据独立性和易扩展性,并可为各种用户共享的数据集合。关系型数据库列行(记录)关系型数据库关系模型使用的存储结构是多个二维表格,表中每一行称为一条记录,用来描述一个对象的信息;每一

38、列称为一个字段,用来描述对象的一个属性。数据表于数据库之间存在相应的关联,这些关联将用来查询相关的数据。数据库管理系统马兰A004杨可A003刘开泰B008李新爱B007数据库检索数据插入数据更新数据删除数据数据库管理系统-DBMS 数据库管理系统(DBMS-DataBase Management System )对收集到的大量数据进行整理、加工、归并、分类、计算、存储等处理,产生新的数据,以便反映事物或现象的本质和特征及其内在联系。时下流行的DBMS简介(1)OracleOracle公司的产品,世界上最好的数据库系统“关系-对象”型数据库支持70多种操作系统,配置、管理和维护复杂主要满足对银

39、行、金融、保险等企业、事业开发大型数据库需求SQL ServerMicrosoft公司的产品,针对不同用户群体的多个版本要求在Windows操作系统平台上运行易用性好时下流行的 DBMS简介(2)MySQL瑞典MySQLAB公司开发,被SUN公司收购,后Oracle收购Sun, 现在MySQL并入了Oracle旗下。体积小、速度快、成本低、开放源码 广泛地应用在Internet上的中小型网站中Access微软公司推出的基于Windows的桌面关系数据库管理系统 ,Microsoft Office的成员之一优点 :存储方式单一 、面向对象 、界面友好、易操作 、集成环境、处理多种数据信息 、支持

40、ODBC 小型数据库,有局限性 :数据库过大 、网站访问频繁 、记录数过多性能会急剧下降 注意:招聘时通常要求“熟练使用SQL Server /Oracle /MySQL 一种或多种数据库”结构化查询语言SQL2结构化查询语言SQL(Structured Query Language)SQL语言是用于关系数据库查询的结构化语言,最早由Boyce和Chambedin在1974年提出,称为SEQUEL语言。1976年,IBM公司的San Jose研究所在研制关系数据库管理系统System R时修改为SEQUEL2,即目前的SQL语言。SQL语言集数据查询(data query)、数据操纵(data

41、 manipulation)、数据定义(data definition)和数据控制(data control)功能于一体,充分体现了关系数据语言的特点和优点。主要特点包括:(1)综合统一 (2)高度非过程化(3)面向集合的操作方式(4)以同一种语法结构提供两种使用方式(5)语言简洁,易学易用数据库系统数据库系统(Database System, DBS)一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户结构组成任务二 MySQL的安装与配置 MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,

42、SUN又被Oracal收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL有如下优势。1、速度快。MySQL数据库可能是目前能得到的最快的数据库。2、连接性和安全性。MySQL是完全网络化的,其数据库可在因特网上访问,因此,可以和任何地方的任何人共享数据库,而且MySQL还能进行访问控制,能够控制特定用户不允许其访问数据。3、可移植性。MySQL可运行在各种版本的UNIX系统及其他非UNIX(如Windows和OS/2)系统上,从家用P

43、C到高级服务器都可运行MySQL。4、支持SQL语言。MySQL支持这种现代数据库系统都选用的语言。5、成本优势。MySQL对多数个人用户来说是免费的。MySQL的安装(1)1. MySQL服务器的安装(1)下载Windows版的MySQL 下载地址: /downloads/mysql/MySQL社区版是免费的,有MSI和zip两种安装方式下载前先选择安装平台(windows)和安装文件方式(MSI或Zip)MySQL的安装(2)(1)安装完毕后选择“Configure the MySQL server now”复选框进入配置向导。配置类型,有两种:Detailed Configuration

44、(详细配置)Standard Configuration(标准配置)。标准配置选项适合想要快速启动MySQL而不必考虑服务器配置的新用户。详细配置选项适合想要更加细粒度控制服务器配置的高级用户。这里选择Detailed Configuration。MySQL的安装(3)(2)单击“next”按钮进行服务器类型选择服务器类型分为3种:Developer Machine(开发机器)Server Machine(服务器)Dedicated MySQL Server Machine(专用MySQL服务器)。鉴于只是初学MySQL,所以这里选择Developer Machine。MySQL的安装(4)(

45、3)单击“next”按钮进入数据库使用情况对话框,有3个选项:Multifunctional Database(多功能数据库)Transactional Database Only(只是事务处理数据库)Non-Transactional Database Only(只是非事务处理数据库)。其中多功能数据库对InnoDB和MyISAM表都适用这里选择“Multifunctional Database”。MySQL的安装(5)(4)下一步进入InnoDB表空间对话框,这里可以修改InnoDB表空间文件的位置,默认位置是MySQL服务器数据目录,这里不做修改,直接下一步。MySQL的安装(6)(5)

46、接下来进入并发连接选择对话框Decision Support(决策支持)(DSS)/OLAP:如果服务器不需要大量的并行连接可以选择该选项;Online Transaction Processing(联机事务处理)(OLTP):如果服务器需要大量的并行连接则选择该选项;Manual Setting(人工设置):选择该选项可以手动设置服务器并行连接的最大数目。这里选择“Decision Support(DSS)/ OLAP”。MySQL的安装(7)(6)进入联网选项对话框。默认情况是启用TCP/IP网络,默认端口为3306。这里不做修改,直接下一步。MySQL的安装(8)(7)进入字符集选择对话

47、框,前面的选项一直是按默认设置进行的,这里要做一些修改。选中“Manual Selected Default Character Set/Collation”选项,在“Character Set”选框中将latin1修改为gb2312。MySQL的安装(9)(8)下一步进入服务选项对话框,服务名为MySQL,这里不做修改。(9)下一步是安全选项对话框在密码输入框中输入root用户的密码。要想防止通过网络以root登录,选中Root may only connect from localhost(只允许从本机登录连接root)选项旁边的框。要想创建一个匿名用户账户,选中Create An Ano

48、nymous Account(创建匿名账户)选项旁边的框。由于安全原因,这里不建议选择这项。MySQL的安装(10)(10)设置完毕后,随后一步是提交配置,单击“execute”按钮即可完成。注意:对不同的操作系统和不同版本的MySQL,安装过程可能有所不同,这里只举MySQL 5.1的安装例子。以上步骤完成后,MySQL服务器就已经可以使用了。(11)MySQL安装和配置完后,打开“开始”“程序”“MySQL”“MySQL Server 5.1”“MySQL Command Line Client”,进入到MySQL客户端,在客户端窗口输入密码,就以root用户身份登录到MySQL服务器,在

49、命令行中输入SQL语句就可以操作MySQL数据库。MySQL的安装(11)AppServ软件的安装(1)开发网络信息管理系统软件需要安装一系列软件产品,单独安装这些软件比较烦琐。因此AppServ软件压缩包整合Apache(服务器软件)、PHP(网页程序设计语言)、MySQL(数据库管理系统软件)、PhpMyAdmin(图形界面的数据库管理软件)四个软件进行形成一套完整的软件安装包,执行AppServ软件的安装程序后,就可以安装上述四个软件产品了。AppServ 2.5.8软件各软件版本是PHP v5.2.1、Apache v2.2.4、MySQL v5.0.27和phpMyAdmin v2.

50、9.2。AppServ软件有很多软件版本,本项目介绍的是AppServ2.5.9版本,压缩包为appserv-win32-2.5.9_PConline.exe为例进行介绍 1. 停止IIS服务器软件工作 目前IIS和Apache软件都是服务器软件。只要计算机中安装其中的一个服务器软件产品计算机就可以成为网站服务器了。要安装AppServ软件,首先需要先检查计算机中是否安装或启动了IIS服务器软件。如果计算机中安装了IIS服务器软件,那么需要先停止IIS服务器软件工作后才能安装AppServ软件。这是因为如果计算机已经自动启动IIS服务器软件工作,在这种情况下再安装Apache服务器软件会导致通

51、讯端口地址冲突,造成新安装的AppServ服务器软件无法正常工作。因此安装AppServ软件前要停止IIS服务器软件工作。 停止计算机安装的IIS服务器软件工作的方法是:在Windows系统的桌面,选择“开始-控制面板-管理工具-服务”选项AppServ软件的安装(2)AppServ软件的安装(3)提示:并非所有的计算机中都安装有IIS服务器软件,如果在上图所示的窗口中没有显示“IIS Admin”的名称,说明计算机中没有安装IIS服务器软件,因此可以直接安装Apache服务器软件。 2.暂停杀毒软件工作。 有时为了顺利安装AppServ软件需要暂时停止杀毒软件的工作。找到AppServ软件的

52、安装程序,双击鼠标键这样可以执行安装程序,出现如下图所示的窗口。AppServ软件的安装(4)选择安装目录:默认为c:AppServAppServ软件的安装(5)勾选要安装的软件,本例勾选了全部选项 AppServ软件的安装(6)输入网站域名、网站系统管理员的电子邮箱地址和端口可根据需要设置网站域名和网站系统管理员的电子邮箱地址,最好设置成为已经申请到的网站域名和管理员的电子邮箱。如果只做练习,那么可以随意设置网站域名和电子邮箱的内容。 (默认端口为80) AppServ软件的安装(7)设置名称是“root”的MySQL数据库管理员的登录密码 本例在“Enter root password”

53、和“Re-enter root password”位置输入的密码是“123456”。在“ Character Sets and Collations”位置选择MySQL数据库的字符集代码。本例选择“GB2312 Simplified Chinese”,这样MySQL数据库和数据表的数据可以使用汉字。这个设置很重要设置数据库管理员的登录密码。AppServ软件的安装(8)勾选“Start Apache”和“Start MySQL”选项,表示执行完安装程序后,计算机自动启动Apache服务器软件和 MySQL数据库软件。点击“Finish”按钮完成。 AppServ软件的安装(9)AppServ安

54、装完毕后,选择Windows的“资源管理器”可以查看计算机“c盘”文件夹的安装情况,出现了AppServ软件的四个组件。AppServ软件的安装(10)完成AppServ软件安装后,软件的目录结构是:C:AppServapache2.2 存储apache2.2服务器软件。C:AppServphp5 存储PHP5网页程序开发工具软件。C:AppServMySQL 存储MySQL数据库管理系统软件。C:AppServMySQLdata. 存储数据库、数据表文件。C:AppServwww. 存储网页程序文件。1. 测试Apache服务器软件安装完AppServ服务器软件后默认的IP地址是“”。所以在

55、浏览器的地址栏输入“”,出现下图所示的窗口,显示AppServ软件自带的主页网页程序,表示Apache服务器软件安装成功。AppServ软件的安装测试(1) 在Windwos系统的桌面,选择“开始-程序-AppServ-MySQL Command Line Client”选项,出现下图窗口,输入数据库管理员的密码(123456) ,出现“mysql”提示符,表示MySQL数据库管理系统软件安装成功。AppServ软件的安装测试(2)3、测试PHP网页程序设计软件在浏览器的地址栏输入“/phpinfo”,出现下图所示的窗口,表示PHP软件安装成功。AppServ软件的安装测试(3)4. 测试ph

56、pMyAdmin软件在浏览器的地址栏输入:/phpmyadmin出现下图所示,表示phpMyAdmin软件安装成功 。在上图窗口,“用户名(U):”处输入“root”,在“密码(P):”处输入“123456”,单击“确定”按钮出现下图所示的窗口,表示正确进入phpMyAdmin软件。AppServ软件的安装测试(4)配置AppServ软件(1)AppServ软件安装后会自行进行参数配置,如果没有特殊需要,可以不做本节介绍的参数配置 ,因为AppServ软件在安装时自动配置好了相关参数。如果需要配置参数,可以按照本节介绍的相关内容进行设置。提示:作为初学者建议不要轻易修改AppServ软件的配置

57、参数。如果设置不当,将导致系统故障。网站默认的文件夹,可修改。 AppServ软件安装后会自行进行参数配置,如果没有特殊需要,可以不做本节介绍的参数配置 ,因为AppServ软件在安装时自动配置好了相关参数。如果需要配置参数,可以按照本节介绍的相关内容进行设置。提示:作为初学者建议不要轻易修改AppServ软件的配置参数。如果设置不当,将导致系统故障。 在Windwos系统的桌面,选择“开始-程序-AppServ-Configuration Server-Apache Edit the httpd.conf configuration File”选项,出现下图 :配置Apache软件配置PHP

58、软件在桌面选择“开始-程序-AppServ-Configuration Server-PHP Edit the configuration File”选项,出现下图的窗口。为了启动PHP软件对MySQL软件的支持模块,把语句:;extension=php_mysql.dll换为语句: extension=php_mysql.dll 去掉分号(;)。配置MySQL软件在Windwos系统的桌面,选择“开始-程序-AppServ-Configuration Server-MySQL Edit the my.ini configuration File”选项,出现下图。MySQL软件安装完毕后为了能

59、够让PHP软件处理MySQL软件的数据,还需要做必要的配置。按照下列要求格式配置语句:mysql.defalt_port=3306mysql.defalt_host=localhostmysql.defalt_user=rootmysql.defalt_password=123456在这里mysql.defalt_port表示MySQL的网络端口。mysql.defalt_host表示服务器的名称,localhost是本地计算机。mysql.defalt_user表示登录MySQL的用户名,root是默认用户名。mysql.defalt_password表示访问MySQL数据库的密码。连接服务

60、器(1)选择Windows桌面的“开始-运行”选项,输入正确的命令和用户名及密码后,可以登录到MySQL服务器。命令格式:mysql -h u -p提示:命令行中的-u、-p必须小写。和分别代表MySQL服务器运行的主机名和MySQL账户用户名。设置时替换为正确的值。连接与断开服务器(2)直接以用户名root的数据库管理员身份登录到数据库服务器。 选择Windows桌面的“开始-程序-appserv-MySQL command line client”选项,出现如上图所示的窗口,输入正确的数据库管理员的密码,出现“mysql”提示符表示正确登录MySQL服务器。密码是“123456” 。(3)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论