编辑推荐
也许你未曾意识到,但你时常在与MySQL或其分支打交道。作为高效且稳定的开源数据库,MySQL备受各大电商网站和社会媒体网站青睐。若想快速并深入了解如何使用和维护MySQL,本书便是**参考。这本注重实践的学习指南以简单明了、条理清晰的方式,教你安装、使用和维护MySQL及其重要分支MariaDB。
本书作者既是MySQL与MariaDB专家,也是小说家。他以生动的语言和翔实的示例分析带你领略数据库设计和数据管理的方方面面。章末精心设计的习题将有助于你温故而知新。
- 创建和修改MySQL表,并在其中声明字段和列。
- 通过示例,掌握数据的插入、选取、更新、删除、连接和子查询。
- 使用字符串函数对列中的文本进行查找、抽取、格式化和转换。
- 学习用于数学或统计运算,以及日期和时间格式化的相关函数。
- 执行管理任务,例如管理账号、备份数据库和批量导入数据。
- 使用PHP等各种编程语言的API连接和查询MySQL或MariaDB。
内容简介
本书使读者不仅能够深入了解MySQL这种主流数据库,还能全面掌握作为开源数据库新秀的MariaDB的使用方法。书中内容由浅至深、层层深入,从分步介绍如何安装MySQL和MariaDB,到以虚构的观鸟网站为例,详解数据库的各种操作。具体内容包括:数据库的结构;数据的插入、选取、更新、删除、连接和子查询;字符串函数、日期和时间函数、聚合函数与数值函数等。后一个部分从更高的角度介绍数据库的管理,内容涉及用户账号及权限、数据库的备份与恢复,以及利用应用编程接口结合C、Perl、PHP、Python、Ruby等不同语言与数据库交互。
作者简介
Russell J.T. Dyer现任MariaDB公司课程主管,同时是一位小说家。他曾在MySQL公司做过近六年的知识库编辑,拥有丰富的MySQL实践经验,另著有《MySQL核心技术手册》。作为小说家,他目前正在创作自己的第二部小说。
目录
目录
序 xiii
前言 xvii
第一部分 软件
第1 章 入门 2
1.1 MySQL 和MariaDB 的价值 2
1.2 邮件列表和论坛 3
1.3 其他书籍和出版物 3
第2 章 安装MySQL 和MariaDB 5
2.1 安装包 5
2.2 许可 6
2.3 获取软件 6
2.4 挑选发行 7
2.5 各种_AMP 8
2.5.1 Linux 二进制发行版 8
2.5.2 Mac OS X 发行版 9
2.5.3 Windows 发行版 12
2.5.4 FreeBSD 和Sun Solaris 发行版 13
2.5.5 源码包 15
2.6 安装后 16
2.6.1 特殊配置 17
2.6.2 给root 设置初始密码 17
2.6.3 关于密码的更多问题,以及删除匿名用户 18
2.6.4 创建用户 19
第3 章 基础知识与mysql客户端 20
3.1 mysql客户端 20
3.2 连接到服务器 21
3.3 开始探索数据库 23
3.3.1 第一条SQL语句 24
3.3.2 插入和操作数据 26
3.3.3 再复杂一点 28
3.4 小结 29
3.5 习题 29
第二部分 数据库结构
第4 章 创建数据库和表 32
4.1 创建数据库 32
4.2 创建表 34
4.3 插入数据 36
4.4 更深入地理解表 37
4.5 小结 40
4.6 习题 40
第5 章 更改表 42
5.1 改表需谨慎 42
5.2 必修的改表技能 43
5.3 选修的改表技能 51
5.3.1 设置列的默认值 51
5.3.2 设置AUTO_INCREMENT 的值 53
5.3.3 改表和建表的另一种方法 54
5.3.4 重命名一个表 56
5.3.5 重排序一个表 57
5.4 索引 58
5.5 小结 62
5.6 习题 62
第三部分 数据处理基础
第6 章 插入数据 67
6.1 语法 67
6.2 实例 68
6.2.1 鸟目表 69
6.2.2 鸟科表 70
6.2.3 鸟种表 75
6.3 其他选择 77
6.3.1 明确插入 77
6.3.2 插入其他表中的数据 77
6.3.3 题外话:设置正确的order_id 79
6.3.4 替换数据 82
6.3.5 数据插入的优先级 83
6.4 小结 85
6.5 习题 86
第7 章 查询数据 88
7.1 基本查询 89
7.2 有条件地查询 89
7.3 结果排序 90
7.4 限定结果集 92
7.5 表连接 92
7.6 表达式与LIKE 94
7.7 对结果集进行计数和分组 98
7.8 小结 100
7.9 习题 100
第8 章 更新和删除数据 102
8.1 更新数据 102
8.1.1 更新指定行 103
8.1.2 按行数更新 106
8.1.3 排序后再按行数更新 107
8.1.4 同时更新多个表 108
8.1.5 处理重复 109
8.2 删除数据 111
8.3 小结 113
8.4 习题 113
第9 章 表连接和子查询 115
9.1 合并结果集 115
9.2 表连接 118
9.2.1 基本的表连接查询 119
9.2.2 更新已连接的表 123
9.2.3 从已连接的表中删除数据 124
9.3 子查询 125
9.3.1 标量子查询 126
9.3.2 列子查询 128
9.3.3 行子查询 129
9.3.4 表子查询 130
9.3.5 子查询的性能考虑 131
9.4 小结 131
9.5 习题 131
第四部分 内置函数
第10 章 字符串函数 134
10.1 格式化字符串 135
10.1.1 拼接字符串 135
10.1.2 设置大小写和引号 137
10.1.3 修剪和补充字符串 137
10.2 抽取文本 139
10.3 搜索字符串及使用长度函数 141
10.3.1 在字符串中找出某段子串的位置 141
10.3.2 字符串长度 143
10.3.3 比较和查找字符串 144
10.3.4 在字符串中替换或插入内容 146
10.4 转换字符串类型 148
10.5 压缩字符串 150
10.6 小结 151
10.7 习题 151
第11章 日期和时间函数 153
11.1 日期和时间的数据类型 153
11.2 当前日期和时间 155
11.3 抽取日期和时间中的某部分 157
11.4 格式化日期和时间 160
11.5 调整格式标准和时区 162
11.6 日期和时间的加减 164
11.7 比较日期和时间 168
11.8 小结 171
11.9 习题 171
第12章 聚合函数和数值函数 173
12.1 聚合函数 173
12.1.1 计数 173
12.1.2 对一组数据进行运算 178
12.1.3 拼接同组的值 182
12.2 数值函数 183
12.2.1 四舍五入 183
12.2.2 上舍入或下舍入 186
12.2.3 截短数字 187
12.2.4 消除负数 187
12.3 小结 189
12.4 习题 189
第五部分 数据库管理
第13章 用户账号和权限 192
13.1 用户账号的基础知识 192
13.2 限制用户账号的访问权限 194
13.2.1 用户名和主机 194
13.2.2 SQL 权限 196
13.2.3 数据库组件和权限 198
13.3 管理员账号 202
13.3.1 用于备份的用户账号 202
13.3.2 用于恢复备份的用户账号 203
13.3.3 用于批量导入的用户账号 203
13.3.4 用于授权的用户账号 204
13.4 回收权限 205
13.5 删除用户账号 206
13.6 更改密码和用户名 207
13.6.1 给用户账号设置密码 207
13.6.2 用户账号重命名 208
13.7 用户角色 209
13.8 小结 211
13.9 习题 211
第14章 数据库的备份与恢复 213
14.1 备份 213
14.1.1 备份所有数据库 214
14.1.2 理解dump 文件 215
14.1.3 备份指定的数据库 220
14.1.4 创建备份脚本 221
14.1.5 备份指定的表 221
14.2 恢复备份 223
14.2.1 恢复数据库 223
14.2.2 恢复表 223
14.2.3 只恢复某些行或列 228
14.2.4 用二进制日志来做恢复 229
14.3 制定备份策略 234
14.4 小结 238
14.5 习题 238
第15章 批量导入数据 240
15.1 准备导入 240
15.2 导入数据的基本做法 243
15.2.1 检查警告信息 243
15.2.2 检查导入是否准确 244
15.2.3 选取导入的数据 246
15.3 更好地导入 248
15.3.1 对应域 248
15.3.2 设置列 249
15.4 其他格式的域和行 250
15.4.1 开始、结束和跳脱 250
15.4.2 替换数据或忽略错误 251
15.5 在MySQL之外导入数据 252
15.5.1 导入本地文件 253
15.5.2 使用mysqlimport 253
15.5.3 没有FILE 权限也能导入数据 254
15.6 批量导出数据 254
15.7 小结 256
15.8 习题 256
第16 章 应用编程接口 258
16.1 创建API用户账号 258
16.2 C API 259
16.2.1 连接MySQL 259
16.2.2 查询MySQL 261
16.2.3 完整的最小C API程序 261
16.2.4 用GNU C编译器编译 262
16.3 Perl DBI 262
16.3.1 安装 263
16.3.2 连接MySQL 263
16.3.3 查询MySQL 263
16.3.4 Perl DBI完整示例 265
16.3.5 更多信息 267
16.4 PHP API 267
16.4.1 安装与配置 267
16.4.2 连接MySQL 268
16.4.3 查询MySQL 268
16.4.4 更多信息 271
16.5 Python 271
16.5.1 安装 271
16.5.2 连接MySQL 271
16.5.3 查询MySQL 272
16.5.4 Python程序示例 273
16.5.5 更多信息 275
16.6 Ruby API 275
16.6.1 安装和准备使用MySQL/Ruby 275
16.6.2 连接MySQL 276
16.6.3 查询MySQL 277
16.6.4 MySQL/Ruby程序示例 277
16.6.5 更多信息 281
16.7 SQL注入 281
16.8 小结 282
16.9 习题 282
关于作者 284
关于封面 284
MySQL与MariaDB学习指南 下载 mobi epub pdf txt 电子书 格式