MySQL_讲义
《mysql教程》PPT课件
数据库的发展史
• 人工管理阶段
– 人力手工整理存储数据
• 文件系统阶段
–使用磁盘文件来存储数据
• 数据库系统阶段
–关系型数据库
• 高级数据库阶段
– “关系-对象”型数据库
• mysql命令
– 处理存放在文件里的SQL命令 – 格式:mysql [option] dbname < file.sql mysql –u root –p --default-character-
set=latin1 dbname < backup.sql
注:latin1是MySQL4.0的默认字符集或者utf-8是 MySQL5.0的默认字符集,如果不知道使用什么字 符集的时候,可以选用这两个其中一个
Address
12, Temple Street 123, Sunset Blvd. 32, Golden Avenue
12, Temple Street 12, Tmple Street 33, Golden Avenue
BookTaken
AC091 AC043 AC021
AC043 AC011 AC011
DBMS的主要功能-For数据库管理员
–数据库的运行管理
保证数据的安全性、完整性、 多用户对数据的并发使用 发生故障后的系统恢复
–数据库的建立和维护功能(实用程序)
数据库数据批量装载 数据库转储 介质故障恢复 数据库的重组织 性能监视等
时下流行的DBMS
• Oracle
– 应用广泛、功能强大,分布式数据库系统 – “关系-对象”型数据库
MySQL数据库培训资料(ppt52张)
MySQL的启动与停止
#bin/mysqld_safe --user=mysql &
#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql.server
#/etc/init.d/mysql.server start/stop/restart
MySQL Administrator
MySQL Administrator 是用来执行数据库管理操作的程序和用来监视和管理MySQL
实例内的数据库、用户的权限和数据的实用程序,比如说配置、控制、开启和关闭 mysql 服务。
MySQL Query Browser
MySQL Query Browser 是一个可视化的 toolset ,用于创建、执行以及最优化的
9
基于Windows的安装
10
数据库配置
11
Windows下数据库的停用和启用
12
MySQL工具
MySQL-Front
一款小巧的管理MySQL的应用程序。主要特性包括多文档界面,语法突出,拖拽方
式的数据库和表格,可编辑/可增加/删除的域,可编辑/可插入/删除的记录,可显示 的成员,可执行的SQL 脚本,提供与外程序接口,保存数据到CSV文件等。
MySQL数据库查询。它就像是镶嵌在Web浏览器中的一个集成的拖曳工具套件,为 使用者提供了一个更简便、更有生产力的途径来存取、分析存储在MySQL数据库服
务器中的信息。
13
MySQL简介 MySQL常用操作 MySQL管理维护
14
mysql体系结构
15
存储引擎的概念
设有张马虎,李小心两人,都是地铁口的自行车管理员. 每天都有很多人来存取自行车,张马虎的管理方式是:来存自己 存,不记录存的是什么车,取时交5毛,也不检查取的是否是自己 的车. 李小心呢,则在存取自己车时,记录存车人的特征与自行车的特 征,当人来取车,还要小心核一下,人与车的特征是否对应 思考: 张马虎和李小心谁对业务的处理速度更高? 二者谁对自行车管理更安全?
《MySQL数据库》教学讲解课件
MySQL支持多种操作系统,如Linux、Windows、Mac OS等,并提供 了多种编程语言的API接口,方便开发者进行数据库操作。
学习目标与要求
掌握MySQL数据库的基 本概念、数据类型和约束 等基础知识。
MySQL数据库安装与配置
详细介绍了MySQL数据库在不同 操作系统上的安装和配置方法,以 及常见问题的解决方案。
MySQL数据库高级应用
介绍了索引、视图、存储过程、触 发器等高级功能,以及MySQL数 据库的优化和备份恢复技术。
SQL语言基础
讲解了SQL语言的基本语法、数据 查询、数据插入、数据更新、数据 删除等操作,以及SQL函数和聚合 函数的使用方法。
安装MySQL数据库
下载MySQL安装包
从MySQL官方网站下载适合操作系统的 安装包。
配置安装选项
设置安装路径、数据存放目录、端口号 等。
安装类型选择
根据需求选择安装类型,如服务器版、 客户端版或开发版。
安装过程
按照安装向导逐步完成安装。
配置MySQL数据库
配置f或my.ini文件: 根据操作系统和MySQL版 本,编辑相应的配置文件, 设置字符集、缓冲池大小等
创建表
使用`CREATE TABLE`语句创建表,并 定义表结构,包括字段名称、数据类 型、约束等。
插入、更新和删除数据
插入数据
更新数据
使用`INSERT INTO`语句向表中插入数据, 可以插入单行数据或多行数据。
使用`UPDATE`语句更新表中的数据,可 以根据条件更新指定的字段。
《MySQL数据库实用教程》电子教案
内容
设计
课程引入:通过提出问题“如何删除表中的记录数据?”引入本课。
授课内容:
1.DELETE和TRUNCATE语句的语法格式
2.删除满足指定条件的数据
3.删除全部数据
总结课程内容,重申重点、难点
课后任务
完成“例4-10”“例4-11”和“例4-12”
任务名称
第四节课堂案例:学生成绩管理数据库的数据操作
授课内容:
一、关系模式设计
1.实体集的转换原则
2.实体集之间的联系的转换原则
【例2-2】将全局E-R图中各个实体集以及实体集之间的联系转换为一组关系模式。
二、关系模式的规范化
1.第一范式(1NF)
2.第二范式(2NF)
3.第三范式(3NF)
【例2-3】检验例2-2方案1和方案2中的关系模式是否满足规范化要求。
任务名称
第四节 子查询、联合查询
教学目的
掌握子查询和联合查询
教学方法
课堂授课、班级授课
教学手段
多媒体教学
重点难点
重点:子查询和联合查询
难点:子查询的执行顺序
3.关系运算
总结课程内容,重申重点、难点
课后任务
完成第1章习题,巩固数据库基础知识
任务名称
第二节MySQL 的安装与配置
教学目的
掌握MySQL的安装与配置方法。
掌握登录与退出MySQL的方法。
教学方法
课堂授课、班级授课
教学手段
多媒体教学
重点难点
重点:登录与退出MySQL
难点:以root身份通过命令提示符窗口登录MySQL的命令mysql
难点:三张表的内连接查询
教学
内容
《MySQL基础教程》课件
数据的插入、查询、更新和删除
总结词
掌握插入、查询、更新和删除数据的基本操 作。
详细描述
插入数据可以使用`INSERT INTO`语句,指 定要插入的表和要插入的数据。查询数据可 以使用`SELECT`语句,指定要查询的表和条
件。更新数据可以使用`UPDATE`语句,指 定要更新的表、更新条件和要更新的数据。
《MySQL基础教程》PPT课件
• MySQL简介 • MySQL的安装与配置 • MySQL的基本操作 • MySQL的数据类型 • MySQL的查询优化 • MySQL的存储过程和函数 • MySQL的触发器和事件 • MySQL的管理和维护
01
MySQL简介
什么是MySQL
定义
MySQL是一个开源的关系型数据库管理系统(RDBຫໍສະໝຸດ S) 。重启MySQL服务
修改配置后,需要重启MySQL服务使配置生效。
启动与停止MySQL服务
启动MySQL服务
通过操作系统命令或MySQL自带的命令行 工具启动MySQL服务。
停止MySQL服务
同样使用操作系统命令或MySQL自带的命令行工具 停止MySQL服务。
常见问题处理
在启动或停止MySQL服务时,可能会遇到 各种问题,如端口被占用、权限问题等,需 要根据实际情况进行处理。
03
04
05
事件是一种定时任务, 可以在指定的时间间隔 内自动执行。
创建事件需要使用 `CREATE EVENT`语句, 并指定事件的名称、触 发时间、触发间隔以及 要执行的SQL语句。
事件的使用场景包括定 期清理数据、自动备份 数据库、定时发送通知 等。
08
MySQL的管理和维护
数据备份与恢复
《mysql教程》课件
总结词
了解和掌握索引和约束的概念及作用, 以及如何在MySQL中创建和使用索引和 约束。
VS
详细描述
索引用于提高查询效率,通过在表的列上 创建索引,可以加快对数据的访问速度。 约束用于保证数据的完整性和一致性,常 见的约束有主键约束、外键约束、唯一约 束和检查约束等。在MySQL中,可以使 用CREATE INDEX语句创建索引,使用 ALTER TABLE语句添加约束。
的性能和响应速度。
04
MySQL安全和维护
用户和权限管理
用户管理
创建、删除用户,设置用户密码,为用户分 配权限等。
权限管理
为用户分配不同的数据库权限,如查询、插 入、更新、删除等。
角色管理
创建、删除角色,为角色分配权限,然后将 角色分配给用户。
访问控制
控制用户对数据库的访问,例如限制某些用 户只能访问特定的表或列。
数据插入、查询、更新和删除
总结词
掌握在MySQL中插入、查询、更新和删除数据的基本操作。
详细描述
插入数据使用INSERT INTO语句,查询数据使用SELECT语句,更新数据使用UPDATE语句,删除数据使用 DELETE FROM语句。这些操作是数据库管理中最常见的操作,需要熟练掌握。
索引和约束
视图和分区
要点一
视图
视图是一个虚拟表,基于SQL查询的结果集。视图可以用 于简化复杂的查询操作,隐藏表中的某些列或行,以及提 供数据安全性控制。
要点二
分区
分区是将表或索引分成多个较小的、更易于管理的片段的 技术。分区可以提高查询性能、管理大型表和索引的灵活 性,以及实现数据维护和备份的优化。
数据库设计和优化
2008年,MySQL被Sun Microsystems公司收 购。
MYSQL经典基础教程ppt课件
password string
birthday date
可编辑课件PPT
8
高级软件人才实作培训专家!
MySQL常用数据类型
分类
数值类型
文本、二进制 类型 时间日期
数据类型
BIT(M) TINYINT [UNSIGNED] [ZEROFILL] BOOL,BOOLEAN SMALLINT [UNSIGNED] [ZEROFILL] INT [UNSIGNED] [ZEROFILL] BIGINT [UNSIGNED] [ZEROFILL] FLOAT[(M,D)] [UNSIGNED] [ZEROFILL] DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]
高级软件人才实作培训专家!
SQL 入门
可编辑课件PPT 1
高级软件人才实作培训专家!
MySQL简介
数据库简介
• SQL Server、Oracle、 • MySQL、DB2、 • SyBase
MySQL数据库的安装和配置 使用命令行窗口连接MYSQL数据库
•mysql –u用户名 –p密码
可编辑课件PPT
可编辑课件PPT
12
高级软件人才实作培训专家!
可编辑课件PPT
13
高级软件人才实作培训专家!
数据库CRUD语句
Insert语句 (增加数据) Update语句 (更新数据) Delete语句 (删除数据) Select语句 (查找数据)
可编辑课件PPT
14
高级软件人才实作培训专家!
Insert语句
可编辑课件PPT
25
高级软件人才实作培训专家!
Select语句(4)
在where子句中经常使用的运算符
mysql第6章课件
6.2.4 6.2.5
流程控制的使用
✎
知识架构
6.3 存储过程的使用
调用存储过程 查看存储过程 修改存储过程 删除存储过程
返回目录
6.3.1 6.3.2
6.3.3
6.3.4
✎
6.1 事务管理
什么是事务?
所谓的事务就是针对数据库的一组操作,它可以由一条或多条SQL语句组成, 同一个事务的操作具备同步的特点,即事务中的语句要么都执行,要么都不执行。 − 事物的使用:
示例如下:
示例如下:
✎
6.2 存储过程的创建
定义条件
− 定义条件是指事先定义程序执行过程中遇到的问题。定 义条件使用DECLARE语句,语法格式如下:
DECLARE condition_name CONDITION FOR [condition_type]; // condition_type的两种形式: [condition_type]: SQLSTATE[VALUE] sqlstate_value|mysql_error_code
持久性
事务 特性
隔离性
✎
6.1 事务管理
案例代码
− 由于事务中的操作都是手动提交的,因此在操作完事务时, 一定要使用COMMIT语句提交事务,否则事务操作会失败。
✎
6.1 事务管理
案例代码
− 在操作一个事务时,如果发现当前事务中的操作是不合理的, 此时只要还没有提交事务,就可以通过回滚来取消当前事务。
提交事务
取消事务(回滚)
COMMIT;
ROLLBACK;
✎
6.1 事务管理
案例代码
− 通过一个转账的案例演示事务的使用。
✎
MySQL数据库入门_教学大纲
《MySQL数据库入门》课程教学大纲一、课程的性质与目标《MySQL数据库入门》是面向计算机相关专业的一门专业基础课,涉及数据库基础知识、MySQL数据库的安装和配置、数据库和表的操作、事务管理、存储过程管理、视图管理、数据库的高级操作等内容,通过本课程的学习,学生能够了解数据库的基础知识,掌握MySQL的开发和管理技术。
二、课程的主要内容及基本要求第一章数据库入门(4学时)[知识点]➢数据库存储结构➢SQL语言➢MySQL安装与配置➢MySQL目录结构➢MySQL的使用[重点]➢MySQL安装与配置➢MySQL的使用[难点]➢数据库存储结构[基本要求]➢了解数据库的存储结构和SQL语言➢掌握MySQL的安装、配置和使用[实践与练习]动手安装和配置MySQL数据库,熟悉MySQL的使用。
第二章数据库和表的基本操作(8学时)[知识点]➢数据库的基本操作➢数据类型➢数据表的基本操作➢表的约束➢设置表的字段值自增➢索引的创建和删除[重点]➢数据库的基本操作➢数据类型➢数据表的基本操作➢表的约束➢索引[难点]➢表的约束➢索引[基本要求]➢掌握数据库的基本操作➢掌握数据类型➢掌握数据表的基本操作➢掌握表的约束➢掌握索引的创建和删除[实践与练习]建议考核课后习题,并安排上机,重点考核对数据库和数据表的操作以及索引的创建和删除。
第三章添加、更新与删除数据(8学时)[知识点]➢添加数据➢更新数据➢删除数据[重点]➢添加数据➢更新数据➢删除数据[难点]➢添加数据➢更新数据➢删除数据[基本要求]➢掌握向表中添加、更新和删除数据[实践与练习]建议上机动手添加、更新和删除数据,掌握MySQL提供的数据库操作语言,包括插入数据的INSERT语句,更新数据的UPDATE语句以及删除数据的DELETE 语句。
第四章单表查询(8学时)[知识点]➢SELECT语句➢按条件查询➢聚合函数➢对查询结果排序➢分组查询➢使用LIMIT限制查询结果的数量➢函数➢为表和字段取别名[重点]➢SELECT语句➢按条件查询➢聚合函数➢对查询结果排序➢分组查询➢使用LIMIT限制查询结果的数量[难点]➢按条件查询➢聚合函数➢对查询结果排序➢分组查询[基本要求]➢掌握简单查询和按条件查询➢掌握分组、排序及限制查询结果等高级查询➢掌握MySQL中常用函数的使用➢熟悉为表和字段取别名[实践与练习]完成测试题,并安排上机课,动手进行单表查询,熟练如何查询单表中的数据,包括简单查询、按条件查询和高级查询。
mysql原理课件ppt
MySQL查询处理
将SQL查询语句分解为单词和符号,识别关键字、标识符、操作符等。
词法分析
语法分析
语义分析
根据语法规则将词法分析的结果构建成一颗解析树。
检查解析树中的语义是否合法,例如检查表和列是否存在,数据类型是否匹配等。
03
02
01
生成多种可能的执行计划
查询优化器会根据统计信息和系统配置生成多种可能的执行计划。
使用SSD硬盘,配置RAID,调整磁盘I/O参数等。
表空间优化
合理规划表空间大小和使用方式,避免空间不足或浪费。
操作系统优化
调整操作系统的参数,如内存分配、进程调度等,以提高MySQL服务器的性能。
MySQL配置优化
根据服务器硬件和业务需求,调整MySQL的配置参数,如缓冲区大小、连接数等。
数据库复制
数据仓库
MySQL可以与移动应用配合使用,提供后端数据库服务。
移动应用
MySQL可以用于存储和管理物联网设备生成的数据。
物联网(IoT)
MySQL数据库系统架构
InnoDB是MySQL的默认存储引擎,支持事务处理、行级锁定和外键约束。
InnoDB
MyISAM
Memory
CSV
MyISAM是MySQL早期版本的默认存储引擎,不支持事务处理,但具有较高的读性能。
详细描述
总结词:MySQL高可用性解决方案是通过多种技术手段来提高数据库的可用性和可靠性,包括主从复制、集群、分片等技术。
MySQL性能优化
优化数据存储
选择合适的数据类型,减少数据冗余,合理组织数据结构。
文件系统优化
使用高性能的文件系统,如XFS或EXT4,并合理配置文件系统参数。
mysql数据库实用教程郑阿奇主编
• BZ(学号,姓名)
1.2.2 逻辑结构设计
2. (1:n)联系的E-R图到关系模式的转换 对于(1∶n)的联系既可单独对应一个关系模式, 也可以不单独对应一个关系模式。 (1)联系单独对应一个关系模式,则由联系的 属性、参与联系的各实体集的主码属性构成关系模 式,n端的主码作为该关系模式的主码。例如,考 虑图1.6描述的“班级(BJ)”与“学生(XS)” 实体集E-R模型可设计如下关系模式: BJ(班级编号,院系,专业名,人数) XS (学号,姓名,专业名,性别,出生日期, 总学分,备注) SY(学号,班级编号)
图1.5 “班级”与“正班长”实体集E-R模型
1.2.1 概念结构设计
2. 一对多的联系(1:n) A中的一个实体可以与B中的多个实体相联系, 而B中的一个实体至多与A中的一个实体相联系。 例如,“班级”与“学生”这两个实体集之间的 联系是一对多的联系,因为,一个班可有若干学 生,反过来,一个学生只能属于一个班。“班级” 与“学生”两个实体集的E-R模型如图1.6所示。
● 网状模型 每一个数据用一个节点表示,每个节点与其他节 点都有联系,这样数据库中的所有数据节点就构成 了一个复杂的网络。图1.3为按网状模型组织的数据 示例。
图1.3 按网状模型组织的数据示例
● 关系模型
以二维表格(关系表)的形式组织数据库中的数 据。例如,学生成绩管理系统涉及的学生、课程和 成绩三个表。“学生”表涉及的主要信息有学号、 姓名、专业名、性别、出生日期、总学分和备注; “课程”表涉及的主要信息有课程号、课程名、类 别、开课学期、学时和学分;“成绩”表涉及的主 要信息有学号、课程号和成绩。附录A表A.4、表 A.5和表A.6描述了学生成绩管理系统中学生、课 程和成绩三个表的部分数据。
mysql教程PPT(无水印)
MySQL的应用场景
网站和Web应用
MySQL是许多流行的网站和Web应用 的数据库首选。
数据仓库和分析
MySQL可以用于构建数据仓库和进 行数据分析,支持大数据处理和数据
挖掘。
企业应用
MySQL适用于各种企业级应用,如 客户关系管理(CRM)、人力资源管 理和财务管理等。
游戏开发
MySQL可以用于游戏开发中的后端 数据库管理,支持游戏数据存储和查 询。
04 安全性
随着网络安全问题的日益突出, MySQL将加强数据加密、身份验 证等方面的安全措施,确保用户 数据的安全与隐私。
THANKS
日志记录
01
启用并配置MySQL的日志记录功能,记录用户的活动和数据库
的更改。
安全审计
02
定期审查和分析日志记录,发现潜在的安全威胁和异常行为。
日志轮换和管理
03
设置日志轮换计划,定期清理旧的日志文件,确保日志文件不
会无限制增长。
06
MySQL与其他数据库的比较 和未来发展
与其他数据库的比较
Oracle
表的创建和管理
创建表
使用`CREATE TABLE`语 句创建一个新的表。
删除表
使用`DROP TABLE`语 句删除一个存在的表。
修改表
使用`ALTER TABLE`语 句修改一个存在的表。
数据插入、查询、更新和删除
数据插入
使用`INSERT INTO`语句将数据 插入到表中。
数据查询
使用`SELECT`语句查询表中的 数据。
数据库的备份和恢复
备份
备份是创建数据库副本的过程,用于防止数据丢失和灾难恢复。MySQL支持多 种备份方法,如全备份、增量备份和差异备份。
《MySQL数据库应用案例教程》教学课件 第10章 MySQL常用函数
字符串函数是MySQL中使用最频繁的函数,主要用于处理数据库中字符串类型的数据。表10-2列 出了MySQL中常用的字符串函数及其功能。
表10-2 MySQL中常用的字符串函数及其功能
函数 LENGTH(str),CHAR_LENGTH(str)
功能 返回字符串长度或字符个数
CONCAT(str1,str2…strn),CONCAT_WS(x,str1,str2…strn)
1 row in set (0.04 sec)
—8—
10.1 数值函数
➢ 10.1.5 四舍五入函数
函数ROUND()的作用是对数值执行四舍五入操作,当函数格式为ROUND(x)时,返回值为整数; 当函数格式为ROUND(x,y)时,对数值x进行四舍五入并保留小数点后y位,下面通过实例进行介绍。
【实例10-6】
+--------------+--------------+----------------+
| ABS(5) | ABS(-5) | ABS(-5.5) |
+--------------+--------------+----------------+
|5
|5
| 5.5
|
+--------------+--------------+----------------+
第 10 章
MySQL常用函数
10.1 数值函数
10.1 数值函数
数值函数是MySQL中一种很重要的函数,主要用于处理数值方面的运算。如果没有这些函数,用 户在编写有关数值运算方面的代码时将会复杂很多。例如,如果没有ABS求绝对值函数,要取一个数 的绝对值,就需要进行多次判断,直接使用该函数可以大大提高用户的工作效率。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章学习目标●会说(说出是什么,说出为什么)●会用●会安装第2章MySQL入门2.1数据库概述●MySQL是什么?MySQL 是最流行的关系型数据库管理系统,在WEB应用方面MySQL 是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
●什么是数据库数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以通过SQL对数据库中的数据进行增加,修改,删除及查询操作。
●什么是关系型数据库数据库中的记录是有行有列的数据库就是关系型数据库,与之相反的就是NoSQL数据库了。
●数据库和表数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。
用户通过数据库管理系统访问数据库中表内的数据。
(记录)●常见的数据库管理系统✧MYSQL :开源免费的数据库,小型的数据库.已经被Oracle收购了.MySQL5.5版本之后都是由Oracle发布的版本。
✧Oracle:收费的大型数据库,Oracle公司的产品。
Oracle收购SUN公司,收购MYSQL。
✧DB2 :IBM公司的数据库产品,收费的。
常应用在银行系统中. 在中国的互联网公司,要求去IOE(IBM小型机、Oracle数据库、EMC存储设备)✧SQLServer:MicroSoft 公司收费的中型的数据库。
C#、.net等语言常使用。
✧SyBase :已经淡出历史舞台。
提供了一个非常专业数据建模的工具PowerDesigner。
✧SQLite : 嵌入式的小型数据库,应用在手机端。
我们要学习的数据库:MYSQL●MySQL发展历程●MySQL的历史可以追溯到1979年,一个名为Monty Widenius的程序员在为TcX的小公司打工,并且用BASIC设计了一个报表工具,使其可以在4MHz主频和16KB内存的计算机上运行。
当时,这只是一个很底层的且仅面向报表的存储引擎,名叫Unireg。
●1990年,TcX公司的客户中开始有人要求为他的API提供SQL支持。
Monty直接借助于mSQL的代码,将它集成到自己的存储引擎中。
令人失望的是,效果并不太令人满意,决心自己重写一个SQL支持。
●1996年,MySQL 1.0发布,它只面向一小拨人,相当于内部发布。
●到了1996年10月,MySQL 3.11.1发布(MySQL没有2.x版本),最开始只提供Solaris下的二进制版本。
一个月后,Linux版本出现了。
在接下来的两年里,MySQL被依次移植到各个平台。
●1999~2000年,MySQL AB公司在瑞典成立。
Monty雇了几个人与Sleepycat合作,开发出了Berkeley DB引擎, 由于BDB支持事务处理,因此MySQL从此开始支持事务处理了。
●2000,MySQL不仅公布自己的源代码,并采用GPL(GNU General Public License)许可协议,正式进入开源世界。
同年4月,MySQL对旧的存储引擎ISAM进行了整理,将其命名为MyISAM。
●2001年,集成Heikki Tuuri的存储引擎InnoDB,这个引擎不仅能持事务处理,并且支持行级锁。
后来该引擎被证明是最为成功的MySQL事务存储引擎。
MySQL与InnoDB的正式结合版本是4.0●2003年12月,MySQL 5.0版本发布,提供了视图、存储过程等功能。
●2008年1月,MySQL AB公司被Sun公司以10亿美金收购,MySQL数据库进入Sun时代。
在Sun时代,Sun公司对其进行了大量的推广、优化、Bug修复等工作。
●2008年11月,MySQL 5.1发布,它提供了分区、事件管理,以及基于行的复制和基于磁盘的NDB集群系统,同时修复了大量的Bug。
●2009年4月,Oracle公司以74亿美元收购Sun公司,自此MySQL数据库进入Oracle时代,而其第三方的存储引擎InnoDB早在2005年就被Oracle公司收购。
●2010年12月,MySQL 5.5发布,其主要新特性包括半同步的复制及对SIGNAL/RESIGNAL的异常处理功能的支持,最重要的是InnoDB存储引擎终于变为当前MySQL的默认存储引擎。
MySQL 5.5不是时隔两年后的一次简单的版本更新,而是加强了MySQL各个方面在企业级的特性。
Oracle公司同时也承诺MySQL 5.5和未来版本仍是采用GPL授权的开源产品。
2.2MySQL安装●安装参考MySQL安装图解.doc●配置MysQL服务●启动和关闭(必须以管理运行cmd命令窗口)●登录格式1:cmd> mysql –u用户名–p密码例如:mysql -uroot –proot格式2:cmd> mysql --user=用户名--host=ip地址--password=密码2.3SQLyog 安装与使用●安装:提供的SQLyog软件为免安装版,可直接使用●使用:输入用户名、密码,点击连接按钮,进行访问MySQL数据库进行操作在Query窗口中,输入SQL代码,选中要执行的SQL代码,按F8键运行,或按执行按钮运行。
第3章SQL语句3.1SQL语句介绍●什么是SQL?全称S tructured Q uery L anguage,简称SQL,中文叫结构化查询语言。
关系数据库语言的国际标准。
SQL92、SQL99不只是mysql还有其他数据库,在SQL92或者SQL99这些国际SQL标准基础之上,它们还扩展了自己的一些SQL语句,比如MySQL中的limit关键字●SQL分类:⏹数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。
关键字:create,alter,drop等⏹数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。
关键字:insert,delete,update等⏹数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户;关键字:grant等⏹数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。
关键字:select,from,where等3.2SQL语句使用3.2.1数据库操作:database●创建数据库语法:* create database数据库名;* create database 数据库名character set 字符集;●查看数据库查看数据库服务器中的所有的数据库:show databases;查看某个数据库的定义的信息:show create database 数据库名;●删除数据库drop database 数据库名称;●其他的数据库操作命令切换数据库:use 数据库名;查看正在使用的数据库:select database();●例如:#创建数据库create database day06;#使用数据库use day06;3.2.2表操作:table3.2.2.1字段类型常用的类型有:数字型:int浮点型:double字符型:varchar(可变长字符串)日期类型:date(只有年月日,没有时分秒)datetime(年月日,时分秒)boolean类型:不支持创建表create table 表名(字段名类型(长度) 约束,字段名类型(长度) 约束);单表约束:* 主键约束:primary key* 唯一约束:unique* 非空约束:not null* 注意:主键约束= 唯一约束+ 非空约束●例如:###创建分类表CREATE TABLE sort (sid INT PRIMARY KEY, #分类IDsname VARCHAR(100) #分类名称);●查看表查看数据库中的所有表:show tables;查看表结构:desc 表名;●删除表drop table 表名;●修改表alter table 表名add 列名类型(长度) 约束; --修改表添加列.alter table 表名modify 列名类型(长度) 约束; --修改表修改列的类型长度及约束.alter table 表名change 旧列名新列名类型(长度) 约束; --修改表修改列名.alter table 表名drop 列名; --修改表删除列.rename table 表名to 新表名; --修改表名alter table 表名character set 字符集; --修改表的字符集3.2.3插入记录:insert●语法:insert into 表(列名1,列名2,列名3..) values (值1,值2,值3..); -- 向表中插入某些列insert into 表values (值1,值2,值3..); --向表中插入所有列insert into 表(列名1,列名2,列名3..) values select (列名1,列名2,列名3..) from 表insert into 表values select * from 表●注意:1.列名数与values后面的值的个数相等2.列的顺序与插入的值得顺序一致3.列名的类型与插入的值要一致.4.插入值得时候不能超过最大长度.5.值如果是字符串或者日期需要加引号’’(一般是单引号)●例如:INSERT INTO sort(sid,sname) VALUES('s001', '电器');INSERT INTO sort(sid,sname) VALUES('s002', '服饰');INSERT INTO sort VALUES('s003', '化妆品');INSERT INTO sort VALUES('s004','书籍');3.2.4更新记录:update●语法:update 表名set 字段名=值,字段名=值;update 表名set 字段名=值,字段名=值where 条件;●注意:1.列名的类型与修改的值要一致.2.修改值得时候不能超过最大长度.3.值如果是字符串或者日期需要加’’.3.2.5删除记录:delete●语法:delete from 表名[where 条件];●面试题:删除表中所有记录使用delete from 表名; 还是用truncate table 表名;删除方式:delete 一条一条删除,不清空auto_increment记录数。