




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MySQL数据库开发与应用1数据库设计基础第章本章内容1.1
数据库设计概述1.2
关系模型1.3E-R图1.4MySQL存储引擎1.5
本章总结1.6实践与应用1.1数据库设计概述数据库(DstabaseDB)是“按照某种数据结构对数据进行组织、存储和管理的容器”,简单的说就是用来存储、管理数据的容器。数据库系统(DstabaseSystem,DBS)是指在计算机中引入数据库后的系统,一般由数据库、数据库管理系统、应用程序、数据库管理员组成。1.1数据库设计概述数据库管理系统(DstabaseManagementSystem,DBMS)是一个管理、控制数据库容器中各种数据库对象的系统软件。
数据库管理系统按照一定的数据模型组织数据,常用的模型包括“层次模型”、“网状模型”、“关系模型”,以及“面向对象模型”等,基于“关系模型”的数据库管理系统称为关系数据库管理系统(RelationalDatabaseManagementSystem,RDBMS)。
1.1数据库设计概述关系数据库概念是由E.F.Codd博士于1976年发表的《关于大型共享数据库数据的关系模型》论文中提出,论文中阐述了关系数据库模型及其原理,并将其用于数据库系统。使用关系模型对数据进行组织、存储和管理的数据库称为关系数据库,关系数据库系统是支持关系数据模型的数据库系统。在关系数据库中所谓的“关系”,实际上是一张二维表,表是逻辑结构而不是物理结构,系统在物理层可以使用任何有效的存储结构来存储数据1.1.2结构化查询语言SQL结构化查询语言(StructuredQueryLanage,SQL)是一种专门用来与数据库通信的语言,其利用一些简单的句子构成基本的语法来存取数据库中的内容,便于用户从数据库中获得及操作所需数据。SQL语言具有以下特点:(1)SQL语言是非过程化语言。(2)SQL语言是统一的语言。(3)SQL语言是关系数据库的公共语言。1.1.2结构化查询语言SQLSQL语言由四部分组成:(1)数据定义语言DDL(DataDefinitionLanguage,DDL)。(2)数据操纵语言DML(DataManipulationLauaguage,DML)。(3)数据控制语言DCL(DataControlLauguage,DCL)。(4)嵌入式SQL语言的使用规定。1.1.2结构化查询语言SQL根据SQL语言的四部分我们得到SQL的数据定义、数据查询、数据操纵,以及数据控制的四个基本功能,表1-1列出了实现其功能动词。表1-1SQL功能及包含的主要动词SQL功能动词数据定义CREATE、DROP、ALTER数据查询SELECT数据操纵INSERT、UPDATE、DELETE数据控制GRANT、REVOKE表1-1SQL功能及包含的主要动词1.1.3数据库设计基本步骤(1)需求分析阶段需求分析是数据库设计的第一步,也是整个设计过程的基础,本阶段的主要任务是对现实世界要处理的对象(公司、部门、企业)进行详细调查,在了解现行系统的概况、确定新系统功能的过程中,收集支持系统目标的基础数据及其处理方法。1.1.3数据库设计基本步骤(2)概念结构设计阶段概念结构设计阶段是整个数据库设计的关键。通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。(3)逻辑结构设计阶段逻辑结构设计阶段将概念结构转换为某个DBMS所支持的数据模型,并将其性能进行优化。1.1.3数据库设计基本步骤(4)数据库物理结构设计阶段数据库物理结构设计阶段是利用数据库管理系统提供的方法、技术,对已经确定的数据库逻辑结构,以较优的存储结构、数据存取路径、合理的数据存储位置以及存储分配,设计出一个高效的、可实现的物理数据库结构。
(5)
数据库实施阶段
在数据库实施阶段运用DBMS提供的数据语言(例如,SQL)以及宿主语言(例如,C),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。1.1.3数据库设计基本步骤(6)数据库运行与维护阶段
数据库应用系统经过试运行后即可投入正式运行,在运行过程中需要不断对其进行调整、修改与完善。
1.2关系模型
关系模型是目前最重要的也是应用最广泛的数据模型。简言之,关系就是一张二维表,由行和列组成。关系模型将数据模型组织成表格的形式,这种表格在数学上称为关系。
1.2.1数据库和表
关系型数据库是由多个表和其他数据库对象组成的,表是一种最基本的数据库对象,由行和列组成,类似电子表格。一个关系数据库通常包含多个二维表(称为数据库表或表),从而实现所设计的应用中各类信息的存储和维护。在关系数据库中,如果存在多个表,则表与表之间也会因为字段的关系产生关联,关联性由主键、外键所体现的参照关系实现。关系数据库不仅包含表,还包含其他数据库对象,如,关系图、试图、存储过程和索引等,所以,通常提到关系数据库就是指一些相关的表和其他数据库对象的集合。
1.2.1数据库和表
如表1-2所示的课程表中收集了教师申报课程的相关信息,包括课程名、课程编号、人数上限、授课教师、课程性质及课程状态信息,构成一张二维表。
课程名课程编号人数上限授课教师课程性质状态C语言程序设计1620902060孙老师必修未审核MySQL数据库设计1630962090李老师必修未审核物联网导论1630949040王老师选修未审核专业外语1620910170田老师比修未审核1.2.2列和表数据表中的列也称为字段,用一个列名也称为字段名标记。除了字段名行,表中每一行都称为一条记录。例如表1-2中共有4个字段、4条记录。如果想查找“MySQL数据库设计”这门课程的授课教师,则可以查找“MySQL数据库设计”所在的行与字段“授课教师”所在的列关联相交处获得。初看上去,关系数据库中的一个数据表与一个不存在“合并单元”的Excel相似,但是同一个数据表的字段名不允许重复,而且为了优化存储空间便于数据排序,数据库表的每一列要求指定数据类型。1.2.3主键与外键
关系型数据库中的一个表是由行和列组成的,并且要求表中的每行记录必须唯一。在设计表时,可以通过定义主键(primarykey)来保证记录(实体)的唯一性。
一个表的主键由一个或多个字段组成,值具有唯一性,且不允许去控制,主键的作用是唯一的标识表中的每一条记录。1.2.3主键与外键
例如在表1-3中,可以用“学号”字段作为主键,但是不能使用“姓名”字段作为主键,因为存在同名现象,无法保证唯一性,有时候表中也有可能没有一个字段具有唯一性,即没有任何字段可以作为主键,这时候可以考虑使用两个或两个以上字段的组合作为主键。学号课程编号成绩141800701620902098141800711630962095141800831630949087171800861620910190表1-3主键外键关系1.2.4约束
设计表时,可对表中的一个字段或多个字段的组合设置约束条件,由数据库管理系统(如MySQL)自动检测输入的数据是否满足约束条件,不满足约束条件的数据将被数据库管理系统拒绝录入。约束分为表级约束和字段级约束,表级约束是对表中几个字段的约束,字段级约束是对表中一个字段的约束1.2.4约束几种常见的约束形式如下:(1)主键约束主键用来保证表中每条记录的唯一性,因此在设计数据库表时,建议为所有的数据库表都定义一个主键,用于保证数据库表中记录的唯一性。(2)外键约束外键约束主要用于定义表与表之间的某种关系。(3)非空约束如果在一个字段中允许不输入数据,可以将该字段定义为null,如果在一个字段中必须输入数据,则应当将该字段定义为notnull。如果设置某个字段的非空约束,直接在该字段的数据类型后面加上“notnull”关键字即可。1.2.4约束(4)唯一性约束如果一个字段值不允许重复,则应当对该字段添加唯一性(unique)约束。与主键约束不同,一张表中可以存在多个唯一性约束,满足唯一性约束的字段可以取null值。如果设置某个字段为唯一性约束,直接在该字段的数据类型后面加上“unique”关键字即可。(5)默认约束默认值字段用于指定一个字段的默认值,当尚未在该字段中输入数据时,该字段中将自动填入这个默认值。(6)检查约束检查(check)约束用于检查字段的输入值是否满足指定的条件,在表中输入或者修改记录时,如果不符合检查约束指定的条件,则数据不能写入该字段。1.2.4约束(7)自增约束自增(AUTO_INCREMENT)约束是MySQL唯一扩展的完整性约束,当向数据库表中插入新记录时,字段上的值会自动生成唯一的ID。在具体设置自增约束时,一个数据库表中只能有一个字段使用该约束,该字段数据类型必须是整型类型。由于设置自增约束后的字段会生成唯一的ID,所以该字段也经常会被设置为主键。MySQL中通过SQL语句的AUTO_INCREMENT来实现。(8)删除约束在MySQL数据库在,一个字段的所有约束都可以用altertable命令删除。1.3E-R图
关系数据库设计一般要从数据模型E-R图(Entity-RelationshipDiagram,E-R图)设计开始。
E-R图既可以表示现实世界中的事物,又可以表示事物之间的关系,它描述了软件系统的数据存储需求,其中E表示实体,R表示关系,所以E-R图由实体、属性和关系3个要素构成,通过一组与实体、属性和关系相关的概念可以很好的描述信息世界。1.3.1实体和属性
(1)实体E-R图中的实体表示现实世界具有相同属性描述的事物的集合,不是某一个具体事物,而是一类事物的统称。E-R图中的实体通常使用矩形表示.
在设计E-R图时,一个E-R图中通常包含多个实体,每个实体由实体名唯一标记。开发数据库时每个实体对应于数据库中的一张数据库表,每个实体的具体取值对应于数据库表中的一条记录。例如“选课系统”中,“课程”是一个实体,“课程”实体对应于“课程”数据库表,而“课程名”为MySQL数据库设计,“人数上限”为90的课程是课程实体的具体取值,对应于“课程”数据库表中的一条记录。1.3.1实体和属性(2)属性E-R图中的属性通常表示实体的某种特征,也可以使用属性表示实体间关系的特征。一个实体通常包含多个属性,每个属性由属性名唯一标记,画在椭圆内,E-R图中的实体的属性对应于数据库表的字段。图1-2课程实体及属性图1-3学生实体及属性1.3.2实体与属性关系
在现实世界任何事物都不是孤立存在的,事物之间或事物内部是有联系的。这些联系在信息世界反映为实体间的关系和实体内部的关系。实体内部的关系指的是组成实体的各属性之间存在的联系;实体之间的关系指的是不同实体之间的联系。
E-R图中的关系主要是来讨论实体间存在的联系,在E-R图中,联系用菱形来表示,菱形框内写明联系的名称,并且用连线将联系框与它所关联的实体连接起来,并且在连线旁边标明关系的类型。1.3.2实体与属性关系 E-R图中实体间的关系类型一般有三种一对一关系(1:1)、一对多关系(1:n)、多对多关系(m:n)(1) 一对一关系(1:1)对于实体集A中的每一个实体,实体集B中至多有一个(可以没有)实体与之联系,反之亦然,则实体集A与实体集B具有一对一关系(1:1)。(2) 一对多关系(1:n)对于实体集A中的每一个实体,实体集B中有n个实体(n>=0)与之联系,而对于实体级B中的每个实体,实体级A中至多只有一个实体与之联系,则称实体集A与实体集B具有一对多关系。1.3.2实体与属性关系(3)多对多关系(m:n)对于实体集A中每个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中的每个实体,实体集A中有m个实体(m>=0)与之联系,则称实体A与实体B具有多对多关系。图1-4两个实体之间的关系类型1.3.2实体与属性关系E-R不仅能够描述两个实体之间的关系也可以描述两个以上实体或者一个实体内的关系。如图1-5为三个实体之间的关系,对于供应商、项目和零件三个实体,一个供应商可以供给多个项目多种零件;一个项目可以使用不同供应商的多种零件;一个零件可以由多个供应商供给多个项目。图1-5三个实体间的关系1.3.2实体与属性关系如图1-6是一个单个实体内的关系,在高等学校,教师通常是按照学院或者系进行管理的,每位教师由一个院长或者主任直接领导,而院长或系主任领导本院或者本系的多名教师,由于院长或者系主任都是教师中的一员,因此教师实体内部存在着领导与被领导的一对多的关系。图1-6单个实体内的关系1.3.3E-R图的设计原则
数据库设计通常采用“一事一地”原则,可以从实体与属性方面体现。(1) 属性应该存在且仅存在于某一个地方(实体或者关联)。该原则确保了数据库中的某个数据仅存储于某个数据库表中,避免了同一数据存储于多个数据库表中,避免了数据冗余。(2) 实体是一个单独的个体,不能存在于另一个实体中成为其属性。该原则确保了一个数据库表中不能包含另一个数据库表,即不能出现“表中套表”的现象。
1.3.3E-R图的设计原则
在“选课系统”中,学生选课时需要提供学号、姓名、班级名、所属院校名及联系方式等信息。学号、姓名以及联系方式需要作为学生实体的属性出现,而班级名和院系名则无法作为学生属性出现。如果将班级名和院系名也作为学生实体的属性,那么学生实体存在(学号、姓名、联系方式、班级名、院系名)5个属性,学生实体中出现了“表中套表”的现象,违背了“一事一地”原则。应该将“班级名”属性与“院系名”属性抽取出来,放入“班级”实体中,将一个“大”的“实体”分解中两个“小”的实体,并且建立班级实体与学生实体之间的一对多关系.1.3.3E-R图的设计原则(3) 同一个实体在同一个E-R图仅出现一次。当同一个E-R图中两个实体间存在多种关系时,为了表示实体间的多种关系,建立不要让同一个实体出现多次。
1.3.3E-R图的设计原则
本着“一事一地”原则对“选课系统”进行设计,得到所有的“部分”E-R图,并将其合并成为“选课系统”E-R图如图1-9所示,其中共有实体4个分别为教师、课程、学生和班级,每个实体包含的属性实体间的关系如E-R图所示。1.4MySQL存储引擎
MySQL数据库中典型的数据库对象包括表、视图、索引、存储过程、函数、触发器等,表是其中最为重要的数据库对象。使用SQL语句“createtable表名”即可创建一个数据库表,在创建数据库表之前,必须首先明确该表的存储引擎。1.4MySQL存储引擎
存储引擎实际上是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据。在关系数据库中,数据以表的形式存储,所以存储引擎也可以称为表类型。MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,数据库开发人员可以获得额外的速度或者功能,从而改善所设计应用的整体功能。1.4MySQL存储引擎 MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。开发人员可以根据需要选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储信息、如何检索这些信息以及需要数据结合什么性能和功能的时候为设计提供最大的灵活性。与其他数据库管理系统不同,MySQL提供了插件式(pluggable)的存储引擎,存储引擎是基于表的。同一个数据库,不同的表,存储引擎可以不同;同一个数据库表在不同的场合可以应用于不同的存储引擎。1.4.1InnoDB存储引擎
与其他存储引擎相比,InnoDB存储引擎是事务(Transaction)安全的,并且支持外键。如果某张表主要提供联机事务处理(OLTP)支持,需要执行大量的增、删、改操作(即insert、delete、update语句),处于事务安全方面考虑,InnoDB存储引擎是较好的选择。
对于支持事务的InnoDB表,影响速度的主要原因是打开了自动提交(autocommit)选项,或者程序没有显示调用“begintrasaction;”(开始事务)和“commit;”(提交事务),导致每条insert、delete或者update语句都自动开始事务和提交事务,严重影响了更新语句(insert、delete、update语句)的执行效率。让多条更新语句形成一个事务,可以大大提高更新操作的性能。从MySQL5.6版本开始,InnoDB存储引擎的表已经支持全文索引,这大幅提升了InnoDB存储引擎的检索能力。1.4.1InnoDB存储引擎
对于InnoDB存储引擎的数据库表而言,存在表空间的概念,InnoDB表空间分享表空间与独享表空间。(1)共享表空间MySQL服务实例承载的所有数据库的所有InnoDB表的数据信息、索引信息、各种元数据信息,以及事务的回滚(UNDO)信息,全部存放在共享表空间文件中。(2)独享表空间如果将全局系统变量innodb_file_per_table的值设为ON(innodb_file_per_table的默认值为OFF),则之后再创建InnoDB存储引擎的新表时,这些表的数据信息、索引信息将保存到独享表空间文件中。1.4.2MyISAM存储引擎 MyISAM存储引擎是基于传统的ISAM(IndexedSequentialAccessMethod有索引的顺序访问方法)类型,它是存储记录和文件的标注方法。与其他存储引擎相比,MyISAM具有检查和修复表格的大多数工具。MyISAM表格可以被压缩,且支持全文搜索。但它们不是事务安全,且不支持外键。如果事物回滚将造成不完全回滚,不具有原子性。如果执行大量的查询操作时,MyISAM是较好的选择。1.4.2MyISAM存储引擎 MyISAM存储引擎是基于传统的ISAM(IndexedSequentialAccessMethod有索引的顺序访问方法)类型,它是存储记录和文件的标注方法。与其他存储引擎相比,MyISAM具有检查和修复表格的大多数工具。MyISAM表格可以被压缩,且支持全文搜索。但它们不是事务安全,且不支持外键。如果事物回滚将造成不完全回滚,不具有原子性。如果执行大量的查询操作时,MyISAM是较好的选择。1.4.3存储引擎的选择
选择存储引擎时,应根据应用特点选择合适的存储引擎。对于复杂的应用系统,还可以根据实际情况选择多种存储引擎进行结合。当不需要事务支持、并发相对较低、数据修改相对较少、以读为主、数据一致性要求不高的场合适合选用MyISAM存储引擎。当需要事务支持、行级锁定对高并发有很好的适应能力,但需要确保查询是通过索引完成,数据更新较为频繁的场合,适合选用InnoDB存储引擎。1.4.3存储引擎的选择
在采用InnoDB存储引擎时需要注意:主键尽量小,避免给Secondaryindex带来过大的空间负担,避免全表扫描,因为使用表锁,可可能缓存所有的索引和数据,提供响应速度,在大批量小插入时合理设置innodb_flush_log_at_trx_commit参数值,尽量自己控制事务而不用使用autocommit自动提交,不用过度追求安全性,避免主键更新,因为这会带来大量数据移动。1.5本章总结
本章首先介绍了数据库设计的基本概念,简述了关系数据库、结构化查询语言SQL的组成与特点,并进一步阐述了数据库设计的基本步骤及注意事项。接着对关系模型进行介绍,描述了数据库和表、列和行以及主要约束。在E-R图内容阐述中,介绍了实体、属性以及关系,并给出了E-R图的设计原则与方法。最后介绍了MySQL存储引擎,主要以两种使用比较广泛的存储引擎为例进行介绍,为后续章节的学习打好基础。1.6实践与练习1选择题数据库系统的核心是()。A.数据模型B.数据库管理系统C.数据库D.数据库管理员(2)E-R图中提供了表示信息世界中实体、属性和()的方法。
A.数据
B.关系
C.表
D.模式(3)E-R图是数据库设计的工具之一,它一般适用于建立数据库的()。
A.概念模型 B.结构模型 C.物理模型 D.逻辑模型1.6实践与练习1选择题(4)SQL语言又称()。
A.结构化定义语言 B.结构化控制语言C.结构化查询语言 D.结构化操纵语言(5)可用于从表中检索数据的SQL语句是()。
A.SELECT语句 B.INSETR语句 C.UPDATE语句 D.DELETE语句2概念题1)简述什么是数据库、数据库系统、数据库管理系统?2)简述什么是关系型数据库?3)简述SQL功能及包含的主要动词?4)数据库设计包含哪的几个阶段,请分别简要阐述?5)什么是E-R图中的实体和属性,以及它们的表示方法?1.6实践与练习3.操作题现有班级信息管理系统需要设计,希望数据库能够管理班级与学生信息,其中学生信息包括学号、姓名、年龄、性别、班级名;班级信息包括班级名、班主任、班级人数。(1) 确定班级实体和学生实体的属性。(2) 确定班级和学生之间的关系,给关系命名并指出关系的类型。(3) 确定关系本身的属性。(4) 画出班级与学生关系的E-R图。MySQL数据库基础与实践2MySQL数据库概述第章本章内容2.1MySQL数据库概述2.2MySQL数据库安装和配置2.3MySQL库的基本操作2.4MySQL表结构的操作2.5案例:网上书店系统2.1MySQL数据库概述MySQL是采用客户端/服务器的关系型数据库管理系统,具有跨平台性和可移植性,体积小、运行速度快、成本低,可运行在多种操作系统上。2.1.1MySQL简介MySQL8.x新功能和新特性1.字符集支持MySQL8.x将默认字符集从latinl更改为utf8mb4,并将utf8mb4_0900_ai_ci作为默认排序规则。utf8mb4编码是utf8编码的超集,utf8最多只能存3字节长度的字符,utfmb4每个字符占4字节。2.InnoDB存储引擎性能增强InnoDB是MySQL默认的存储引擎,支持数据库的事务处理、数据表的外键等功能。MySQL8.x对InnoDB的性能进行了大幅优化,在事务支持、读写工作负载等方面有着明显的提升。3.索引优化MySQL8.x中新增了隐藏索引和降序索引。隐藏索引的特性对于性能调试非常有用。当隐藏一个索引时,观察其对数据库的影响。如果数据库性能有所下降,就说明这个索引是有用的;如果数据库性能没有变化,则说明这个索引是无用的。支持降序索引,提高了特定场景的查询性能。降序索引只支持InnoDB
存储引擎。2.1.1MySQL简介4.自增变量的持久化在MySQL8.x之前,自增主键AUTO_INCREMENT的值如果大于max(primarykey)+1,在MySQL重启后,会重置AUTO_INCREMENT=max(primarykey)+1,这种现象在某些情况下会导致业务主键冲突或者其他难以发现的问题。自MySQL8.x开始,已经将自增变量持久化了,并不会由于数据库的重启而重置该值。5.窗口函数MySQL8.x新增了窗口函数,可以实现若干新的查询方式。窗口可以理解为记录集合,窗口函数也就是在满足某种条件的记录集合上执行的特殊函数。窗口函数可以用来处理复杂的报表统计分析场景,例如计算移动平均值、累计和、排名等。2.1.2MySQL体系结构MySQL的组成部分包括:连接池组件、系统管理和控制工具组件、SQL接口组件、解析器组件、优化器组件、缓存组件、插件式存储引擎及物理文件。图2-1MySQL体系结构2.1.2MySQL体系结构2.2MySQL数据库安装和配置官方网址为/downloads/。以Windows操作系统为开发平台,采用的是MySql8.2.0版本。2.2.1MySQL安装和配置服务(1)双击mysql-8.2.0-winx64.msi文件,在弹出的安装向导对话框中,单击“Next”按钮。2.2.1MySQL安装和配置服务(2)进入选择“安装类型”的对话框,选择“Custom”选项,单击“Next”按钮。2.2.1MySQL安装和配置服务在打开的自定义安装对话框中选择合适的安装组件,单击“Browse”按钮,将安装路径更改为D:\ProgramFiles\MySQL\MySQLServer8.2\,单击“Next”按钮。2.2.1MySQL安装和配置服务(3)进入准备安装程序对话框,单击“Install”按钮,开始安装。2.2.1MySQL安装和配置服务(4)安装完成后,出现安装完成对话框,选中复选框“RunMySQLConfigurator”,配置MySQL服务器,单击“Finish”按钮。2.2.1MySQL安装和配置服务(5)进入MySQL服务器实例配置向导对话框。2.2.1MySQL安装和配置服务(6)单击“Next”按钮,打开类型与网络对话框,如图2-9所示。在“ConfigType”下拉菜单中选择服务器配置类型。选择默认的“DevelopmentComputer”即可,其他配置保持默认,注意默认端口号为3306,单击“Next”按钮。2.2.1MySQL安装和配置服务(7)打开账号与角色对话框,如图2-10所示。设置MySQL的超级用户root的密码,分别在MySQLRootPassword和RepeatPassword两个文本框中输入密码和确认密码(记住此密码),单击“Next”按钮。2.2.1MySQL安装和配置服务(8)打开Windows服务对话框,如图2-11所示。将MySQL服务器实例配置为一个Windows服务,同时设置是否开机自动启动。保持默认值即可,单击“Next”按钮。2.2.1MySQL安装和配置服务(9)打开服务器文件权限对话框,如图2-12所示。保持默认值即可,单击“Next”按钮。2.2.1MySQL安装和配置服务(10)打开示例数据库对话框,如图2-13所示。若不安装示例数据库,保持默认设置即可,单击“Next”按钮。2.2.1MySQL安装和配置服务(11)打开应用配置对话框,如图2-14所示。单击“Execute”按钮,开始执行配置过程。配置完成后,界面如图2-15所示,单击“Next”按钮。2.2.1MySQL安装和配置服务(12)打开安装完成对话框,如图2-16所示。单击“Finish”按钮,完成全部安装与配置工作。2.2.2启动和停止服务1.通过图形化界面启动和停止MySQL服务按“Win+R”组合键打开“运行”对话框,在“打开”文本框中输入“services.msc”命令,单击“确定”按钮,即可打开“服务”窗口。找到“MySQL82”服务,即可完成相应功能。2.2.2启动和停止服务2.通过DOS命令启动和停止MySQL服务打开“开始”菜单,在“搜索”框中输入“cmd”命令,选择以管理员身份运行“命令提示符”应用,进入DOS命令窗口。在命令提示符后输入“netstartMySQL82”命令或“netstopMySQL82”命令,按下<Enter>键,即可实现MySQL服务的启动与停止2.2.3MySQL加入环境变量若没有将MySQL服务的bin目录添加到环境变量PATH中,在这种情况下进入DOS命令窗口。在命令提示符后输入“mysql-uroot-p”命令,按下<Enter>键,系统将会输出如下出错信息,表明系统找不到相应的mysql程序。2.2.3MySQL加入环境变量可以通过设置环境变量PATH来解决这个问题(1)右击桌面上“此电脑”图标,选择“属性”菜单项。在弹出的“系统”对话框中,选择“高级系统设置”选择卡。在弹出的“系统属性”对话框中,选择“高级”选项卡,然后单击“环境变量”按钮,将弹出“环境变量”对话框。2.2.3MySQL加入环境变量(2)在系统变量列表中查看是否存在PATH变量(注意:不区分大小写)。如果不存在,则新建系统变量PATH,若存在,则选中该变量,单击“编辑”按钮,打开“编辑系统变量”对话框。在“变量值”文本框中原有变量值的后面增加MySQL安装目录下bin目录的路径,本书中对应的路径是“D:\ProgramFiles\MySQL\MySQLServer8.2\bin;”。单击“确定”按钮,完成系统变量PATH的编辑。2.2.3MySQL加入环境变量重新打开一个新的DOS命令窗口,在命令提示符后输入“mysql-uroot-p”命令,按下<Enter>键,如果系统运行结果如下图所示,则表明环境变量PATH配置成功。2.2.4连接MySQL服务器连接MySQL服务器的命令格式如下:mysql-h服务器主机名-u用户名-p各选项的含义如下:-h:指定所要连接的MySQL服务器主机。如果MySQL服务器与执行mysql命令的机器是同一台主机时,主机名可以使用localhost或使用IP地址,也可以省略此选项。-u:指定连接MySQL服务器使用的用户名,如root为管理员用户,具有所有权限。-p:指定连接MySQL服务器使用的密码,在该参数后直接回车,然后以密文的形式输入密码。2.2.4连接MySQL服务器假设连接MySQL服务器的用户名和密码分别是root和123456,如果本机既是客户机又是服务器,则可以使用下面命令来连接MySQL服务器:mysql-uroot-p输入完上述命令之后,回车,会显示要求输入密码的提示“Enterpassword:”,输入“root”后回车。如果成功连接MySQL服务器,则会显示出欢迎信息及“mysql>”提示符,等待用户输入MySQL命令或者SQL语句。2.2.4连接MySQL服务器在连接到MySQL服务器后,可以随时输入quit、exit或\q命令来终止会话。2.2.4连接MySQL服务器另外一种进入MySQL控制台的方法:单击“开始”,选择“MySQL→MySQLServer8.2→MySQLCommandLineClient”,会出现控制台窗口,直接输入密码回车,即可连接MySQL服务器。2.2.5MySQL可视化操作工具比较常用的有Navicat、MySQLWorkbench及SQLyog等。本节介绍Navicat的使用方法。2.2.5MySQL可视化操作工具进入操作界面后,单击工具栏上的“连接”按钮,将会打开设置连接属性的对话框,定义一个连接名称并输入正确的连接信息,单击“连接测试”按钮测试连接是否成功,然后单击“确定”按钮。2.2.5MySQL可视化操作工具以创建一个学生管理系统的数据库为例,创建数据库及表的过程如下:(1)创建数据库右击“MYSQL”连接,选择“新建数据库”选项,在打开的创建数据库对话框中输入数据库名称school,设置字符集为utf8mb4,然后单击“确定”按钮,完成数据库school的创建。2.2.5MySQL可视化操作工具(2)创建数据表双击school数据库图标或者右击school图标,选择“打开数据库”选项,打开数据库,即设置school数据库为当前数据库。创建students表,右击“表”图标,选择“新建表”选项,在右侧窗口中设计表的结构,然后单击工具栏上的“保存”按钮,将表名保存为students。2.2.5MySQL可视化操作工具在左侧导航窗口中,双击students数据表图标或者右击students图标,选择“打开表”选项,打开数据表,然后向表中添加记录。由于ID字段设置了自动增量属性,ID字段的值可由系统自动填充,用户无需填写。2.2.5MySQL可视化操作工具若要以SQL语句的形式对数据库及表进行操作,可单击工具栏上的“查询”按钮,然后再单击“新建查询”按钮,即可在QueryEditor栏中输入SQL语句,如输入select*fromstudents,然后单击工具栏上的“允许”按钮,即可执行SQL语句。2.3MySQL库的基本操作本节以一个简单的网上书店的数据库管理为例,介绍数据库和表的创建以及对数据库和表的各种操作。2.3.1创建数据库创建新的数据库之前,要先连接到MySQL服务器。创建数据库命令如下:CREATEDATABASE[IFNOTEXISTS]<数据库名>[[DEFAULT]CHARACTERSET<字符集名>][[DEFAULT]COLLATE<校对规则名>];例如,创建网上书店的数据库bookstore,可在控制台中输入如下语句:createdatabasebookstore;如果数据库创建成功,将会出现“QueryOK,1rowaffected”的提示信息。2.3.1创建数据库修改数据库字符集的MySQL命令如下:ALTER{DATABASE|SCHEMA}<数据库名>[[DEFAULT]CHARACTERSET<字符集名>|[DEFAULT]COLLATE<校对规则名>]例如,修改数据库bookstore的默认字符集为“utf8mb4”,以管理员身份运行“命令提示符”应用,在控制台中输入如下语句:alterdatabasebookstorecharactersetutf8mb4;2.3.2查看数据库查看当前MySQL服务器上的数据库列表的命令如下:showdatabases;2.3.3显示数据库查看数据库的相关信息,如默认字符集等,命令如下:showcreatedatabasebookstore;2.3.4选择当前库使用SQL语句USE即可指定当前数据库,如要选择bookstore为当前数据库,可使用如下命令:usebookstore;如果选择数据库成功,将会出现“Databasechanged”的提示信息,以后在控制台中输入的MySQL命令及SQL语句都将默认操作bookstore数据库中的数据库对象。2.3.5删除数据库如果要删除一个指定的数据库,如bookstore数据库,可在控制台中使用下面的SQL语句:dropdatabasebookstore;如果数据库删除成功,将会出现“QueryOK,0rowsaffected”的提示信息。2.4MySQL表结构的操作本节将介绍如何创建、查看、修改和删除MySQL数据库表。2.4.1创建数据表关系数据库中,数据是以二维表的形式存放的。每一行代表一条记录,每一列代表一个字段。创建数据表主要是定义数据表的结构,包括数据表的名称、字段名、字段类型、属性、约束及索引等。2.4.1创建数据表使用CREATETABLE语句创建表的基本语法格式如下:CREATETABLE[IFNOTEXISTS]表名(字段名1数据类型[约束]][,字段名2数据类型[约束]] ……[,字段名n数据类型[约束]][其他约束条件])[其他选项];2.4.1创建数据表例如,在bookstore数据库中创建一个名为users的用户表,代码如下:usebookstorecreatetableusers( uidintnotnullprimarykeyauto_increment, namevarchar(20)notnullunique, pwdvarchar(20)notnull, sexchar(2));2.4.1创建数据表使用SHOWTABLES命令来查看当前数据库中可用的表:showtables;2.4.1创建数据表定义字段时常用的关键字:1.AUTO_INCREMENT该属性用于设置整数类型字段的自动增量属性。当数值类型的字段设置为自动增量时,每增加一条新记录,该字段的值就会自动加1,而且此字段的值不允许重复。AUTO_INCREMENT字段必须被索引,而且必须为NOTNULL。每个表最多只能有一个字段具有AUTO_INCREMENT属性。2.4.1创建数据表2.DEFAULTDEFAULT属性是指表中添加新行时给表中某一字段指定的默认值。使用DEFAULT定义,一是可以避免NOTNULL值的数据错误;二是可以加快用户的输入速度。如设置users表中sex字段的默认值为F,在创建users表时可使用如下语句:sexenum(‘F’,’M’)default‘F’2.4.1创建数据表3.NOTNULL指定NOTNULL属性的字段,不能有NULL值。当添加或修改数据时,设置了NOTNULL属性的字段值不允许为空,必须存在具体的值。4.UNSIGNED表示该值不能为负数。2.4.1创建数据表5.PRIMARYKEY表中唯一标识每一行的字段(可以是多个字段)可以定义为表的主键(PRIMARYKEY)。定义PRIMARYKEY时,该字段的空值属性必须定义为NOTNULL。一个表中只能有一个PRIMARYKEY。有两种创建主键的方法(同样适用于UNIQUE),下面两条CREATETABLE语句是等价的:createtabletest(uidintnotnullprimarykey);createtabletest(
uid
intnotnull,primarykey(uid));2.4.1创建数据表6.UNIQUEUNIQUE唯一索引通过在列中不输入重复值来保证一个字段或多个字段的数据完整性。与PRIMARYKEY不同的是,每个表可以创建多个UNIQUE列。7.FOREIGNKEYFOREIGNKEY定义了表之间的关系,主要用来维护两个表之间的数据一致性关系,是关系数据库中增强表与表之间参照完整性的主要机制。定义FOREIGNKEY约束时,要求在主键表中定义了PRIMARYKEY约束或UNIQUE约束。只有InnoDB存储引擎提供外键支持机制。2.4.1创建数据表在子表里定义外键的语法格式如下:[CONSTRAINT约束名]FOREIGNKEY(字段名)REFERENCES父表名(字段名)[ONDELETE级联选项][ONUPDATE级联选项]2.4.1创建数据表例如,为订单表orders中的uid列创建外键约束,主键表(父表)为用户表users,创建订单表的代码如下:createtableorders(oidintnotnullprimarykey,uidintnotnull,statusintnotnull,totalpricefloatnotnull,constraintfk_orders_usersforeignkey(uid)referencesusers(uid)ondeletecascadeonupdatecascade);2.4.2查看数据库表结构使用DESCRIBE语句来查看数据表结构,代码如下:describeusers;也可以使用如下代码:showcolumnsfromusers;2.4.3修改表结构修改表的语法格式如下:ALTERTABLE表名ACTION[,ACTION]…;其中,每个动作(ACTION)指的是对表所做的修改,MySQL支持一条ALTERTABLE语句带多个动作,以逗号分隔。2.4.3修改表结构1.修改字段(1)添加新字段ALTERTABLE表名ADD新字段名数据类型[约束条件][FIRST|AFTER字段名];例如,为用户表users添加一个address字段,数据类型为varchar(50),非空约束,可以使用下面的SQL语句:altertableusersaddaddressvarchar(50)notnull;若要在users表中sex字段后增加一个phone字段,数据类型为varchar(20),非空约束,则对应的SQL语句如下:altertableusersaddphonevarchar(20)notnullaftersex;2.4.3修改表结构(2)修改字段如果只需要修改字段的数据类型,则使用CHANGE或MODIFY子句都可以,其语法格式如下:ALTERTABLE表名CHANGE原字段名新字段名数据类型;ALTERTABLE表名MODIFY字段名数据类型;例如,要修改users表中的phone字段,将数据类型由varchar(20)改为int,并设置默认值为0,下面两条语句是等效的。altertableuserschangephonephoneintunsigneddefault0;altertableusersmodifyphoneintunsigneddefault0;2.4.3修改表结构如果需要修改字段的字段名(及数据类型),这时就只能使用CHANGE子句了。例如,将users表中的phone字段修改为telephone字段,且数据类型修改为varchar(20),则可以使用下面的SQL语句:altertableuserschangephonetelephonevarchar(20);2.4.3修改表结构(3)删除字段删除表字段的语法格式如下所示:ALTERTABLE表名DROP字段名;例如,将users表的address字段删除,则可以使用如下SQL语句:altertableusersdropaddress;2.4.3修改表结构2.修改约束条件(1)添加约束条件ALTERTABLE表名ADDCONSTRAINT约束名约束类型(字段名);例如,向用户表users的telephone字段添加唯一性约束,且约束名为phone_unique,可以使用下面的SQL语句:altertableusersaddconstraintphone_uniqueunique(telephone);2.4.3修改表结构如果要向订单表orders的uid字段添加外键约束,且约束名为fk_orders_users,可以使用下面的SQL语句:altertableusersaddconstraintfk_orders_usersforeignkey(uid)referencesusers(uid);2.4.3修改表结构(2)删除约束条件若要删除表的主键约束,其语法格式如下:ALTERTABLE表名DROPPRIMARYKEY;例如,要删除订单表orders的主键约束,可以使用如下代码:altertableordersdropprimarykey;2.4.3修改表结构若要删除表的外键约束,其语法格式如下:ALTERTABLE表名DROPFOREIGNKEY外键约束名;例如,要删除订单表orders的外键约束,可以使用如下代码:altertableordersdropforeignkeyfk_orders_users;2.4.3修改表结构若要删除字段的唯一性约束,则只需删除该字段的唯一性索引即可,其语法格式如下:ALTERTABLE表名DROPINDEX唯一索引名;例如,要删除用户表users的telephone字段的唯一性索引,可以使用如下代码:altertableusersdropindexphone_unique;2.4.3修改表结构3.修改表的其他选项常用的操作如:修改存储引擎、修改默认字符集等,其语法格式如下:ALTERTABLE表名ENGINE=新的存储引擎类型;ALTERTABLE表名DEFAULTCHARSET=新的字符集;例如,将users表的存储引擎修改为MyISAM,默认字符集设置为utf8,可以使用如下代码:altertableusersengine=MyISAM;altertableusersdefaultcharset=utf8;2.4.3修改表结构4.修改表名ALTERTABLE原表名RENAMETO新表名;还可以使用RENAMETABLE语句,其语法格式如下:RENAMETABLE原表名TO新表名;例如,将users表的表名修改为tbl_users,可以使用如下代码:altertableusersrenametotbl_users;或renametableuserstotbl_users;2.4.4删除数据库表删除数据库表使用droptable语句实现,其语法格式如下:DROPTABLE[IFEXISTS]表名1[,表名2,…];例如,删除users表可使用如下语句:droptableusers;2.5MySQL存储引擎存储引擎是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据。在关系数据库中,数据以表的形式存储,所以存储引擎也可以称为表类型。MySQL配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。开发人员可以根据需要选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储信息、如何检索这些信息以及需要数据结合什么性能和功能的时候为设计提供最大的灵活性。1.InnoDB存储引擎2.MyISAM存储引擎2.6案例:网上书店系统本节将继续介绍网上书店系统数据库的设计和实现过程。本系统定义的数据库中主要包含以下几张表:用户表Users图书类别表BookType图书信息表BookInfo订单信息表Orders订单详情表OrderDetails。2.5案例:网上书店系统1.用户表UsersCREATETABLEusers(U_IDintNOTNULLauto_incrementPRIMARYKEY,U_Namevarchar(20)NOTNULLUNIQUEKEY,U_Pwdvarchar(20)NOTNULL,U_Sexchar(2)defaultNULL,U_Phonevarchar(20)defaultNULL);2.5案例:网上书店系统2.图书类别表BookTypeCREATETABLEbooktype(BT_IDintNOTNULLauto_incrementPRIMARYKEY,BT_Namevarchar(20)NOTNULL,BT_FatherIDintdefaultNULL,BT_HaveChildchar(2)defaultNULL);2.5案例:网上书店系统3.图书信息表BookInfoCREATETABLEbookinfo(B_IDintNOTNULLauto_incrementPRIMARYKEY,B_Namevarchar(50)NOTNULL,BT_IDintNOTNULL,B_Authorvarchar(20)NOTNULL,B_ISBNvarchar(30)NOTNULL,B_Publishervarchar(30)NOTNULL,B_DatedateNOTNULL,B_MarketPricefloatNOTNULL,B_SalePricefloatNOTNULL,B_QualitysmallintNOTNULL,B_SalessmallintNOTNULL,CONSTRAINTbookinfo_ibfk_1FOREIGNKEY(BT_ID)REFERENCESbooktype(BT_ID));2.5案例:网上书店系统4.订单信息表OrdersCREATETABLEorders(O_IDintNOTNULLauto_incrementPRIMARYKEY,U_IDintNOTNULL,O_TimedateNOTNULL,O_StatusintNOTNULL,O_UserNamevarchar(20)NOTNULL,O_Phonevarchar(20)NOTNULL,O_Addressvarchar(50)NOTNULL,O_PostCodechar(6)NOTNULL,O_Emailvarchar(50)NOTNULL,O_TotalPricefloatNOTNULL,CONSTRAINTorders_ibfk_1FOREIGNKEY(U_ID)REFERENCESusers(U_ID));2.5案例:网上书店系统5.订单详情表OrderDetailsCREATETABLEorderdetails(OD_IDintNOTNULLauto_incrementPRIMARYKEY,O_IDintNOTNULL,B_IDintNOTNULL,OD_NumbersmallintNOTNULL,OD_PricefloatNOTNULL,CONSTRAINTorderdetails_ibfk_1FOREIGNKEY(O_ID)REFERENCESorders(O_ID),CONSTRAINTorderdetails_ibfk_2FOREIGNKEY(B_ID)REFERENCESbookinfo(B_ID));本章总结首先简单的介绍了MySQL数据库及MySQL的体系结构;然后介绍了如何安装和配置MySQL服务;重点介绍了如何使用MySQL命令及SQL语句对MySQL数据库及数据表进行操作;最后,通过实现一个简单的案例,使读者能快速地掌握如何使用MySQL数据库。实践与练习一、选择题在MySQL中,通常使用________语句来指定一个已有数据库作为当前工作数据库。A.USING B.USED C.USES D.USE2.SQL语句中修改表结构的命令是________。A.MODIFYTABLE B.MODIFYSTRUCTUREC.ALTERTABLE D.ALTERSTRUCTURE3.用SQL的ALTERTABLE语句修改基本表时,删除其中某个列的约束条件应使用的子句是_______。A.ADDB.DELETEC.MODIFYD.DROP实践与练习4.用SQL语句建立表时将某字段定义为主关键字,应使用关键字________。CHECK B.PRIMARYKEY C.FREE D.UNIQUE5.启动MySQL服务所使用的命令是
。A.START B.NETSTARTMYSQLC.STARTMYSQL D.STARTNETMYSQL实践与练习(6)在创建表时,不允许某列为空可以使用________。A.NOTNULL B.NONULL C.NOTBLANK D.NOBLANK(7)支持外键的存储引擎是________。A.MyISAM B.InnoDB C.MEMORY D.CHARACTER(8)创建数据库Demo的语句正确的是________。A.CREATEDATABASEDemo; B.SHOWDATABASES;C.USEDemo; D.DROPDATABASEDemo;实践与练习(9)MySQL命令“DROPDATABASEDemo;”的功能是________。A.修改数据库名为Demo B.删除数据库DemoC.使用数据库Demo D.创建数据库Demo(10)修改表students的phone字段,将VARCHAR(20)修改为VARCHAR(11),下列命令语句错误的是________。A.ALTERTABLEstudentsMODIFYphoneVARCHAR(11);B.ALTERTABLEstudentsCHANGEphonephoneVARCHAR(11);C.ALTERTABLEstudentsCHANGEphoneVARCHAR(11);D.ALTERTABLE…MODIFY和ALTERTABLE…CHANGE命令都可以完成修改实践与练习二、填空题(1)创建唯一性索引时,通常使用的关键字是________。(2)在CREATETABLE语句中,通常使用________________关键字来指定主键。(3)MySQL默认使用的端口号是________。(4)MySQL安装成功后,在系统中会默认建立一个________用户。 (5)MySQL中,查看当前服务器上数据库列表所使用的命令为_______________。实践与练习三、操作题在数据库school中有学生信息表students,学生信息表结构如表2-6所示。使用SQL语句完成以下操作。(1)创建数据库school。(2)创建数据表students。(3)修改表结构,添加“联系电话”字段s_phone,类型为varchar(20),允许为空。(4)修改表结构,删除出生日期字段。 (5)删除数据表students。(6)删除数据库school。实验指导题目1MySQL数据库的安装和配置1任务描述掌握MySQL数据库的安装和配置。2任务要求(1)下载相应版本软件并进行安装,完成MySQL服务实例的配置。(2)配置PATH环境变量。(3)完成指定操作:启动服务、连接MySQL服务器、停止服务。3操作步骤提示(1)下载相应版本软件并进行安装,完成MySQL服务实例的配置。(2)配置PATH环境变量。(3)完成指定操作:启动服务、连接MySQL服务器、停止服务。实验指导题目2创建第一个JavaWeb程序1任务描述
完成学生选课系统数据库的设计。2任务要求(1)设计学生选课系统的数据库。(2)完成学生选课系统数据库的创建。(3)完成学生选课系统数据表的创建。3操作步骤提示(1)根据自己的理解设计学生选课系统的数据库。各表参考结构如下:Students(Sno,Sname,Sex,Department),其中Sno为主键Courses(Cno,Cname,Credit,Semester,Period),其中Cno为主键SC(Sno,Cno,Grade),其中Sno,Cno为主键(2)在控制台中使用SQL语句创建数据库,参考代码如下:createdatabaseStudentManage;实验指导(3)在控制台中使用SQL语句创建数据表,参考代码如下:useStudentManage;CreatetableStudents( //学生表 Snovarchar(8)primarykey, //学号 Snamevarchar(10)notnull, //姓名 Sexenum(‘男’,’女’)default‘男’, //性别 Departmentvarchar(20)default‘计算机系’) //所在系);CreatetableCourses( //课程表 Cnovarchar(10)primarykey, //课程号 Cnamevarchar(20)notnull, //课程名称 Creditintnotnull, //学分 Semesterintnotnull, //学期 Periodintnotnull //学时);实验指导CreatetableSC( //成绩表 Snovarchar(8)notnull, //学号 Cnovarchar(10)notnull, //课程号 Gradeintnotnull, //成绩 Primarykey(Sno,Cno),Foreignkey(Sno)referencesStudents(Sno),Foreignkey(Cno)referencesCourses(Cno));实验指导题目3使用Navicat完成数据库及数据表的操作1任务描述使用Navicat完成学生选课系统数据库的设计。2任务要求(1)连接MySQL服务器。(2)创建StudentManage1数据库。(3)创建学生表、课程表及成绩表。(4)完成数据的输入。3操作步骤提示(1)连接MySQL服务器。(2)创建数据库。右击“mysql”连接,选择“NewDatabase”选项,创建数据库StudentManage1,设置字符集为utf8,完成数据库的创建。(3)创建数据表。双击StudentManage1数据库图标,然后右击“Tables”图标,选择“NewTable”选项,在右侧窗口中设计表的结构。(4)添加记录。在左侧导航窗口中,双击students数据表图标,打开数据表,然后向表中添加记录。谢谢!MySQL数据库基础与实践3MySQL管理表记录第章本章内容3.1MySQL基本数据类型3.2MySQL运算符3.3字符集设置3.4增添表记录3.5修改表记录3.6删除表记录3.7案例:图书管理系统中表记录的操作3.1MySQL基本数据类型在创建表时,表中的每个字段都有数据类型,它用来指定数据的存储格式、约束和有效范围。选择合适的数据类型可以有效地节省存储空间,同时可以提升数据的计算性能。MySQL提
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 快递员工培训课件
- 宠物养殖租赁合同范本
- 金属桥架合同范本
- 小学生食品安全课件
- 高低压配电工程施工承包合同
- 检验灭火器合同书
- 关于采购办公用品的申请报告与审批流程说明
- 民族局离婚协议书
- 中学生课外阅读指南观后感
- 法律咨询行业法律建议免责
- 前置胎盘详解课件
- 《社会保障》课件
- 录播教室装修方案
- 《道路客运输驾驶员“两客一危”安全警示教育培训》心理健康课件
- 烹饪刀工与原料成型技术课件
- 部编版五年级语文下册第一课《古诗三首》课件
- 沪教版四年级数学下册全册完整课件
- 小学数学西南师大三年级上册三辨认方向指南针PPT
- 工作室成员成长档案模板(内部版)课件
- (完整版)马克思主义基本原理概论知识点
- 弱电系统巡查记录表(办公楼)
评论
0/150
提交评论