- ISBN:9787115505842
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:434
- 出版时间:2019-04-01
- 条形码:9787115505842 ; 978-7-115-50584-2
本书特色
《MySQL数据库管理实战》详细介绍了MySQL数据库管理从入门到实战在内的所有知识。 《MySQL数据库管理实战》共分为18章,主要介绍了MySQL数据库的系统管理与基本操作,MySQL数据库的流程控制及函数、日期时间处理、分组统计、多表联合操作,以及MySQL数据库的内部工作原理、存储引擎、事务处理、存储程序开发、备份恢复、性能优化等内容。 《MySQL数据库管理实战》步骤详细,示例丰富,以实战为主,讲解直击MySQL数据库的本质,特别适合有志于从事数据库开发与设计的入门级读者阅读。本书还可以供开设了数据库课程的高等院校的师生阅读,以及作为相关IT培训机构的参考图书。
内容简介
《MySQL数据库管理实战》详细介绍了MySQL数据库管理从入门到实战在内的所有知识。 《MySQL数据库管理实战》共分为18章,主要介绍了MySQL数据库的系统管理与基本操作,MySQL数据库的流程控制及函数、日期时间处理、分组统计、多表联合操作,以及MySQL数据库的内部工作原理、存储引擎、事务处理、存储程序开发、备份恢复、性能优化等内容。 《MySQL数据库管理实战》步骤详细,示例丰富,以实战为主,讲解直击MySQL数据库的本质,特别适合有志于从事数据库开发与设计的入门级读者阅读。本书还可以供开设了数据库课程的高等院校的师生阅读,以及作为相关IT培训机构的参考图书。
目录
1.1 数据库的发展史 1
1.2 数据库中数据存储形态(数据模型) 1
1.2.1 层次(阶层)数据库 2
1.2.2 网状(网络)数据库 2
1.2.3 关系数据库 2
1.2.4 面向对象的数据库 2
1.3 为什么应用开发离不开数据库 3
1.4 SQL介绍 3
1.4.1 SQL简介 3
1.4.2 SQL的特点 3
1.4.3 SQL的基本语句 4
第 2章 MySQL基本管理 5
2.1 MySQL的客户端与服务器端 5
2.1.1 MySQL客户端与服务器端的概念 5
2.1.2 MySQL客户端 5
2.1.3 Navicat for MySQL的安装 5
2.1.4 运行Navicat for MySQL 7
2.1.5 Navicat for MySQL的连接与使用 7
2.2 MySQL服务器的启动与停止 9
2.2.1 SQL的组成部分 9
2.2.2 进入MySQL命令模式 10
2.2.3 创建数据库 10
2.2.4 数据库命名规范及改变当前数据库 11
2.2.5 删除数据库 11
2.2.6 创建数据表 12
2.3 删除表 13
2.4 安全复制表 13
2.5 安全修改表 14
2.5.1 新增字段 14
2.5.2 删除字段 15
2.5.3 修改字段 15
2.5.4 增加主键 16
2.6 MySQL命令行中不能输入中文的解决办法 16
第3章 MySQL账户权限设置 17
3.1 了解MySQL权限系统 17
3.2 MySQL权限操作 19
3.2.1 GRANT命令使用说明 19
3.2.2 权限相关操作 20
3.2.3 权限操作样本 23
3.3 丢失MySQL ROOT密码的解决方法 25
第4章 MySQL数据库表列的数据类型 29
4.1 数值类型 29
4.1.1 整数类型 29
4.1.2 浮点类型 30
4.2 字符串类型 30
4.3 CHAR与VARCHAR类型区别 30
4.4 列类型属性ZEROFILL(填充0) 31
4.5 列类型属性UNSIGEND(无符号)与SIGNED(有符号) 31
4.6 TEXT与BLOB类型的区别 32
4.7 ENUM与SET类型处理 33
4.8 SET类型的处理方式 33
4.9 网站中常用数据类型介绍 34
4.10 DEFAULT(默认)使用技巧 35
第5章 MySQL表结构的维护 36
5.1 表结构的创建 36
5.1.1 MySQL表结构创建语法解释说明 36
5.1.2 MySQL表结构创建实例 40
5.1.3 MySQL表名修改 43
5.2 表结构的维护 43
5.2.1 MySQL添加字段 44
5.2.2 MySQL删除字段 44
5.2.3 MySQL调整字段顺序 44
5.2.4 MySQL删除主键 45
5.2.5 MySQL增加主键 45
5.2.6 MySQL重命名列 45
5.2.7 MySQL改变列类型 46
5.2.8 MySQL添加索引 46
5.2.9 MySQL添加唯一索引 46
5.2.10 MySQL删除索引 47
5.3 MySQL修改库、表及列字符集 47
5.3.1 MySQL修改库字符集 47
5.3.2 MySQL修改表字符集 47
5.3.3 MySQL修改列(字段)字符集 48
5.3.4 MySQL修改字符集的有关注意事项 48
5.3.5 MySQL字符集的查看 48
第6章 MySQL的索引 50
6.1 索引概述 50
6.1.1 关于索引的建议 51
6.1.2 MySQL中使用索引 51
6.2 UNIQUE实际开发中的使用方法 52
6.3 主键(primary key)使用方法 53
6.3.1 主键的作用 53
6.3.2 主键的创建方法 53
6.4 AUTO_INCREMENT自增使用技巧 54
6.4.1 AUTO_INCREMENT的属性 54
6.4.2 使用AUTO_INCREMENT时的注意事项 54
6.4.3 关于MySQL的AUTO_INCREMENT问题分析 55
第7章 MySQL的基本查询 57
7.1 SELECT的语法结构 57
7.1.1 语法结构说明 57
7.1.2 语法解释 58
7.1.3 关于MySQL迭代 59
7.2 SELECT准备 59
7.3 SELECT、DELETE、UPDATE的WHERE子句 63
7.4 MySQL查询、删除、更新WHERE子句AND与OR 65
7.5 MySQL的CONCAT函数 65
7.6 GROUP_CONCAT ()分组拼接函数 66
7.6.1 函数使用 66
7.6.2 关于GROUP_CONCAT函数返回值长度限制说明 67
7.7 MySQL的DISTINCT使用方法 67
7.8 MySQL的IS NULL与IS NOT NULL使用方法 68
7.9 MySQL的IF()与IFNULL()使用方法 68
7.10 MySQL的ORDER BY子句的使用 70
7.10.1 ORDER BY子句第 一种使用方式 70
7.10.2 ORDER BY 子句第二种使用方式 70
7.11 MySQL的LIMIT关键字使用 71
7.12 MySQL的BETWEEN...AND...关键字使用 71
7.13 MySQL的IN关键字使用 72
7.13.1 IN的普通用法 72
7.13.2 IN的子查询用法 72
7.14 MySQL的EXISTS关键字使用 73
7.15 MySQL查询SET数据类型的方法 74
7.15.1 函数FIND_IN_SET介绍 74
7.15.2 将函数FIND_IN_SET运用于SET类型数据查询 74
7.15.3 将函数FIND_IN_SET运用于排名 74
7.15.4 FIND_IN_SET与逻辑运算操作IN的区别 76
7.16 MySQL LIKE与NOT LIKE用法 77
7.16.1 LIKE的通配符 77
7.16.2 NOT LIKE 77
7.17 MySQL REGEXP正则的使用 78
7.17.1 REGEXP的运算符 78
7.17.2 REGEXP的通配符 78
7.17.3 REGEXP实例 79
7.18 MySQL RAND随机函数使用 80
7.19 终端执行SQL的方式 81
第8章 MySQL数据库的字符集设计 83
8.1 MySQL的二进制与非二进制字符串 83
8.1.1 MySQL的二进制字符串及二进制类型 83
8.1.2 MySQL的BINARY、CHAR、VARCHAR的区别 86
8.2 MySQL字符集设置与常见问题处理 88
8.2.1 基本概念 88
8.2.2 MySQL系统变量 88
8.2.3 MySQL字符集支持的两个方面 89
8.2.4 MySQL默认字符集的查看 89
8.2.5 MySQL默认字符集的修改 90
8.2.6 MySQL字符集的相互转换过程 91
8.3 MySQL常用字符集选择 92
8.4 MySQL字符集与校对规则 93
8.4.1 简要说明 93
8.4.2 详细说明 93
8.5 MySQL各字符集下汉字或字母所占字节数 95
8.6 MySQL字符集校对规则实例详解 96
8.7 MySQL数据库、表、字段字符集 97
8.7.1 创建数据库、表、表列指定字符集 98
8.7.2 修改数据库、表、表列的字符集 99
8.7.3 查看数据库、表、表列的字符集 100
8.7.4 查看数据库、表、表列的字符集的排序规则 101
第9章 MySQL的增加、删除和修改操作 103
9.1 MySQL增加、删除和修改操作的严格模式与宽松模式 103
9.1.1 严格与宽松的概念 103
9.1.2 严格模式与宽松模式的开启与关闭 103
9.1.3 严格模式与宽松模式举例 104
9.2 MySQL的增加数据INSERT 105
9.2.1 INSERT语法 105
9.2.2 INSERT语法共性说明 106
9.2.3 MySQL INSERT应用举例 107
9.3 MySQL的更新数据UPDATE 108
9.3.1 UPDATE语法 108
9.3.2 UPDATE实际应用举例 110
9.3.3 UPDATE应用实例总结 113
9.4 MySQL的删除数据DELETE 113
9.5 MySQL的左、右外连接查询 116
9.5.1 左外连接举例 116
9.5.2 右外连接举例 116
第 10章 MySQL的流程控制与函数 118
10.1 MySQL操作符 118
10.1.1 MySQL算术运算符 118
10.1.2 MySQL比较运算符 118
10.1.3 MySQL逻辑运算符 119
10.1.4 MySQL位运算符 120
10.1.5 MySQL操作符的优先级 120
10.1.6 MySQL操作符举例 121
10.2 MySQL中的Boolean类型 125
10.2.1 Boolean说明 125
10.2.2 Boolean总结 125
10.3 MySQL的COALESCE与GREATEST 126
10.3.1 COALESCE()取非NULL(空)值 126
10.3.2 GREATEST()取*大值 126
10.4 MySQL流程控制语句 127
10.4.1 IF语句 127
10.4.2 CASE语句 129
10.4.3 WHILE语句 133
10.4.4 LOOP语句 134
10.4.5 REPEAT语句 135
10.5 MySQL函数 136
10.5.1 MySQL流程控制函数 136
10.5.2 MySQL字符串处理函数 138
10.5.3 MySQL数学函数 147
10.5.4 MySQL日期时间函数 152
10.5.5 MySQL其他函数 165
第 11章 MySQL的日期与时间 168
11.1 MySQL的日期与时间类型 168
11.1.1 YEAR类型 168
11.1.2 TIME类型 170
11.1.3 DATA类型 172
11.1.4 DATATIME类型 173
11.1.5 TIMESTAMP类型 175
11.1.6 MySQL的日期选取 176
11.1.7 MySQL选择日期类型的原则 177
11.1.8 MySQL获得当前日期时间 177
11.2 MySQL日期与时间函数实例 177
11.2.1 STR_TO_DATE()函数 177
11.2.2 DATE_FORMAT()函数 178
11.2.3 TIME_FORMAT()函数 179
11.2.4 UNIX_TIMESTAMP()函数 180
11.2.5 INTERVAL expr TYPE()函数 181
11.2.6 给日期增加一个时间间隔函数DATE_ADD() 182
11.2.7 两个日期相减函数DATEDIFF() 185
11.2.8 两个时间相减函数TIMEDIFF() 185
11.2.9 两个时间相减函数TIMESTAMPDIFF() 186
11.2.10 添加时间间隔函数TIMESTAMPADD() 189
第 12章 MySQL的分组与统计 193
12.1 MySQL COUNT()函数 193
12.1.1 准备工作 193
12.1.2 COUNT(*|n|空值|字段名) 193
12.1.3 DISTINCT与COUNT连用 194
12.1.4 GROUP BY(多个字段)与COUNT分组计数 194
12.1.5 CASE WHEN 语句与COUNT连用 195
12.2 MySQL MIN()、MAX()、AVG()和SUM()函数 196
12.2.1 准备工作 196
12.2.2 MAX()*大值函数 197
12.2.3 MIN()*小值函数 198
12.2.4 AVG()求平均函数 199
12.2.5 SUM()求和函数 200
12.3 MySQL GROUP BY分组 201
12.3.1 准备工作 201
12.3.2 GROUP BY说明 202
12.3.3 GROUP BY举例 202
12.4 MySQL HAVING分组统计结果的筛选 204
12.4.1 MySQL HAVING说明 204
12.4.2 MySQL HAVING示例 205
第 13章 MySQL的多表联合操作 206
13.1 MySQL多表操作基础部分 206
13.1.1 数据库的约束 206
13.1.2 多表查询使用场景 208
13.1.3 一对一、一对多表关系分析 211
13.1.4 多对多表关系分析 212
13.2 MySQL多表操作实例操作 212
13.2.1 笛卡儿积 212
13.2.2 内部连接操作 215
13.2.3 左外连接操作 217
13.2.4 右外连接操作 218
13.2.5 自连接操作 220
13.2.6 多表实例操作 220
第 14章 MySQL工作机制 229
14.1 MySQL多线程分析 229
14.1.1 调度方式实现 229
14.1.2 线程池实现 230
14.1.3 线程池优化 233
14.1.4 线程模式控制 233
14.1.5 InnoDB存储引擎的线程控制机制 234
14.2 MySQL的共享锁与排他锁 237
14.3 MySQL的表级锁、页级锁与行级锁 241
14.3.1 MySQL的表级锁、页级锁与行级锁的简要介绍 241
14.3.2 MySQL的表级锁、页级锁与行级锁总结 245
14.4 MySQL存储引擎和事务 245
14.5 MySQL的事务处理 246
14.5.1 MySQL事务的ACID 246
14.5.2 MySQL的COMMIT与ROLLBACK 247
14.5.3 MySQL的事务保存点SAVEPOINT 250
14.5.4 MySQL接受用户请求、SQL语句执行过程 257
第 15章 MySQL存储引擎 258
15.1 MySQL数据库引擎介绍 258
15.2 MySQL存储引擎的比较 262
15.3 MySQL数据文件存放位置 263
15.4 MySQL数据库引擎更换 264
15.5 MySQL数据库引擎添加与拔出 265
15.6 MySQL数据库引擎的应用场景 265
15.6.1 选择合适的MySQL存储引擎 265
15.6.2 MySQL存储引擎应用场景 267
第 16章 MySQL视图、存储程序 269
16.1 MySQL视图 269
16.1.1 为什么使用视图 269
16.1.2 MySQL创建视图 270
16.1.3 MySQL查看视图 274
16.1.4 MySQL删除视图 275
16.1.5 MySQL修改视图 275
16.2 MySQL存储过程/存储函数 275
16.2.1 MySQL变量的定义 275
16.2.2 MySQL SET与DECLARE声明变量 279
16.2.3 MySQL预处理语句 282
16.2.4 MySQL存储过程的概念详解 286
16.2.5 MySQL结束符的设置 292
16.2.6 MySQL存储过程的BEGIN ... END 293
16.2.7 MySQL IF语句 293
16.2.8 MySQL CASE语句 296
16.2.9 MySQL WHILE语句 300
16.2.10 MySQL LOOP语句 301
16.2.11 MySQL REPEAT语句 303
16.2.12 MySQL ITERATE语句 304
16.2.13 MySQL存储过程BEGIN...END嵌套 305
16.2.14 MySQL SELECT...INTO语句 306
16.2.15 MySQL存储函数 307
16.3 MySQL触发器 312
16.3.1 MySQL触发器的概念 312
16.3.2 MySQL触发器的作用 312
16.3.3 MySQL触发器的优点 313
16.3.4 MySQL触发器的创建 313
16.3.5 MySQL触发器的查看与删除 315
16.3.6 MySQL触发器的执行顺序 315
16.3.7 MySQL触发器实例 316
第 17章 MySQL备份与恢复 324
17.1 MySQL数据库备份的多种操作手段 324
17.1.1 数据库备份的重要性 324
17.1.2 mysqldump常用命令 324
17.1.3 mysqldump备份所有数据库 328
17.1.4 mysqldump备份多个数据库 329
17.1.5 MySQL命令恢复mysqldump备份的数据库 330
17.2 MySQL BINLOG日志管理 331
17.2.1 MySQL BINLOG日志详解 331
17.2.2 MySQL增量备份BINLOG日志 345
第 18章 全解MySQL性能优化 347
18.1 MySQL数据库设计良好架构的必要性 347
18.1.1 应用需求数据架构的概念 347
18.1.2 MySQL常见数据库服务器配置架构 348
18.1.3 MySQL数据库服务器经典配置架构 349
18.2 MySQL字段类型的选择 350
18.3 MySQL数据库索引 351
18.3.1 MySQL索引的概念 351
18.3.2 MySQL索引的优缺点 351
18.3.3 MySQL索引的类型 353
18.3.4 MySQL索引的优化 355
18.4 MySQL查询优化 356
18.4.1 MySQL查询优化应注意的问题 356
18.4.2 MySQL EXPLAN详解 359
18.4.3 MySQL多表查询优化 368
18.4.4 MySQL子查询分析 373
18.4.5 MySQL JOIN语句优化分析 377
18.4.6 MySQL数据导入优化 378
18.4.7 MySQL INSERT性能提高 379
18.4.8 MySQL GROUP BY分组优化 381
18.4.9 MySQL ORDER BY索引优化 385
18.4.10 MySQL OR索引分析 387
18.4.11 MySQL STATUS获得MySQL状态 390
18.4.12 MySQL慢查询SLOW 404
18.4.13 合理使用MySQL锁机制 407
18.4.14 MySQL优先级 411
18.4.15 MySQL MyISAM索引键缓存 413
18.4.16 MySQL查询缓存工作过程 417
18.4.17 MySQL查看查询缓存 420
18.4.18 MySQL查询缓存开启 421
18.4.19 MySQL优化MySQL连接数 427
18.4.20 MySQL数据库损坏的修复 431
作者简介
甘长春,毕业于北京交通大学电气工程及自动化专业,当前供职于中国铁路北京局集团有限公司。自从参加工作以来,一直致力于计算机应用系统的研发和建设,先后参与了多个铁路应用项目的研发工作,同时,也与多家IT企业合作开发项目,主要负责数据库架构设计及应用开发等工作。从2014年起,一直在天津市大学软件学院及其他一些大学从事兼职教学工作,所授课程为PHP和Oracle。 孟飞,当前就读于内蒙古工业大学自动化专业,在学期间,完成了数字电子技术和模拟电子技术等大量实验,参与内蒙古自治区博士自然科学基金“混合微电网综合协调控制与能量分配策略研究”和“风光储混合分布式发电系统协调控制与能量分配策略研究”项目研发。在致力于C及汇编语言研究的同时,还在自修数据库,包括MySQL、Oracle,尤其在MySQL数据库方面,曾经与天津融创软通科技有限公司合作,负责“学生成绩分析与教师考核评价系统”项目的数据库设计、优化以及存储程序开发等工作。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0