MySQL经典实例(第三版)
Paul DuBois
马晶慧 译
出版时间:2019年05月
页数:840
随着MySQL受欢迎程度的提高,关于如何通过MySQL解决具体问题的疑问越来越多,这本书也应运而生。当需要快速的解决方案或技术时,这本手册里的资源可以为没有时间从头解决MySQL问题的程序员或专家提供大量简短且重点突出的代码、数百个完整的示例,以及清晰简明的解说。
本书主要面向数据库初学者和专家,以及Web开发人员,经过更新后涵盖了MySQL最新版的强大功能。本书侧重于使用Python、PHP、Java、Perl和Ruby的API进行编程。本书包含两百多个技巧,你可以从中学习:
● 使用mysql客户端,编写基于MySQL的程序。
● 建表、加载数据,以及从表中选择数据。
● 存储、获取和处理字符串。
● 使用日期和时间。
● 排序查询结果,生成汇总信息。
● 使用存储例程、触发器和计划事件。
● 导入、导出、验证,以及重新格式化数据。
● 执行事务,统计应用。
● 处理Web输入,根据查询结果生成Web网页。
● 使用MySQL进行Web会话管理。
● 安全防范和服务器管理。
  1. 前言
  2. 第1章 客户端程序mysql
  3. 1.0 概述
  4. 1.1 设置MySQL用户账号
  5. 1.2 创建数据库和示例表
  6. 1.3 找不到mysql
  7. 1.4 指定mysql的命令选项
  8. 1.5 以交互的方式执行SQL语句
  9. 1.6 执行从文件或程序中读取的SQL语句
  10. 1.7 控制mysql输出的路径和格式
  11. 1.8 在SQL语句中使用用户定义的变量
  12. 第2章 编写基于MySQL的程序
  13. 2.0 概述
  14. 2.1 连接数据库与断开连接
  15. 2.2 检查错误
  16. 2.3 编写库文件
  17. 2.4 执行语句并获取结果
  18. 2.5 处理语句中的特殊字符和NULL值
  19. 2.6 处理标识符中的特殊字符
  20. 2.7 识别结果集中的NULL值
  21. 2.8 获取连接参数
  22. 2.9 结论和建议
  23. 第3章 从表中查询数据
  24. 3.0 概述
  25. 3.1 指定查询的行与列
  26. 3.2 指定查询结果中列的别名
  27. 3.3 查询结果排序
  28. 3.4 过滤重复行
  29. 3.5 处理NULL值
  30. 3.6 在程序中比较NULL值
  31. 3.7 通过视图简化查询
  32. 3.8 多表查询
  33. 3.9 截取查询结果的开头、末尾或中间部分
  34. 3.10 当LIMIT要求“错误”的排序时该怎么办
  35. 3.11 利用表达式计算LIMIT值
  36. 第4章 表管理
  37. 4.0 概述
  38. 4.1 克隆表
  39. 4.2 将查询结果保存到表中
  40. 4.3 创建临时表
  41. 4.4 生成的表名
  42. 4.5 检查或更改表的存储引擎
  43. 4.6 通过mysqldump复制表
  44. 第5章 字符串
  45. 5.0 概述
  46. 5.1 字符串的属性
  47. 5.2 字符串的数据类型
  48. 5.3 设置客户端连接的字符集
  49. 5.4 字符串字面量的定义
  50. 5.5 检查或更改字符串的字符集或排序规则
  51. 5.6 转换字符串的大小写
  52. 5.7 控制字符串比较中的大小写敏感度
  53. 5.8 利用SQL模式进行模式匹配
  54. 5.9 使用正则表达式进行模式匹配
  55. 5.10 分割或连接字符串
  56. 5.11 搜索子字符串
  57. 5.12 设置MySQL用户账号
  58. 5.13 用短语进行全文检索
  59. 5.14 全文检索中必须出现或禁止出现的词
  60. 5.15 全文检索的词组查找
  61. 第6章 日期与时间
  62. 6.0 概述
  63. 6.1 选择时间数据类型
  64. 6.2 使用小数秒支持
  65. 6.3 更改MySQL的日期格式
  66. 6.4 设置客户端时区
  67. 6.5 切换日期时间值的时区
  68. 6.6 获取当前的日期或时间
  69. 6.7 使用TIMESTAMP或DATETIME追踪行的修改时间
  70. 6.8 提取日期或时间值的各部分
  71. 6.9 合成日期或时间值
  72. 6.10 时间值和基本单位之间的转换
  73. 6.11 计算日期或时间之间的间隔
  74. 6.12 日期或时间值的加法运算
  75. 6.13 计算年龄
  76. 6.14 查询一个月的天、后一天或当月的天数
  77. 6.15 通过子字符串替换来计算日期
  78. 6.16 计算星期
  79. 6.17 查询某周中某天的日期
  80. 6.18 计算闰年
  81. 6.19 规范化非ISO格式的日期字符串
  82. 6.20 基于时间特征的查询
  83. 第7章 查询结果的排序
  84. 7.0 概述
  85. 7.1 通过ORDER BY对查询结果排序
  86. 7.2 利用表达式进行排序
  87. 7.3 查询结果中不包含排序列
  88. 7.4 控制字符串排序的大小写区分
  89. 7.5 日期排序
  90. 7.6 利用列值的子字符串排序
  91. 7.7 利用固定长度的子字符串排序
  92. 7.8 利用可变长度的子字符串排序
  93. 7.9 按域名顺序排列主机名
  94. 7.10 按数字顺序排序用点分割的IP值
  95. 7.11 将值移动到排序结果的开头或后
  96. 7.12 自定义排序
  97. 7.13 枚举值的排序
  98. 第8章 汇总数据
  99. 8.0 概述
  100. 8.1 基本的汇总技巧
  101. 8.2 通过创建视图简化汇总
  102. 8.3 查找与小值和优选值相关的值
  103. 8.4 控制MIN()和MAX()是否区分字符串大小写
  104. 8.5 按子群汇总
  105. 8.6 汇总与NULL值
  106. 8.7 仅选择具有特定特征的组
  107. 8.8 通过计数来确定值是否
  108. 8.9 按表达式结果分组
  109. 8.10 汇总非分类数据
  110. 8.11 查找小或优选的汇总值
  111. 8.12 基于日期的汇总
  112. 8.13 同时使用分组和总体的汇总值
  113. 8.14 生成包含汇总和列表的报告
  114. 第9章 存储例程,触发器和计划事件
  115. 9.0 概述
  116. 9.1 创建复合语句对象
  117. 9.2 利用存储函数封装计算
  118. 9.3 通过存储过程返回多个值
  119. 9.4 利用触发器动态设置列的默认值
  120. 9.5 利用触发器模拟基于函数的索引
  121. 9.6 在其他日期和时间类型中模拟TIMESTAMP属性
  122. 9.7 利用触发器记录变更
  123. 9.8 使用事件来计划数据库操作
  124. 9.9 编写辅助例程动态执行SQL
  125. 9.10. 处理存储程序中的错误
  126. 9.11 利用触发器预处理或拒绝数据
  127. 第10章 元数据
  128. 10.0 概述
  129. 10.1 获取受语句影响的行数
  130. 10.2 获取结果集的元数据
  131. 10.3 确认语句是否会生成结果集
  132. 10.4 使用元数据来格式化查询输出
  133. 10.5 查看数据库和表或检查其存在性
  134. 10.6 访问列的定义
  135. 10.7 获取ENUM和SET列的信息
  136. 10.8 获取服务器的元数据
  137. 10.9 编写适合MySQL服务器版本的应用程序
  138. 第11章 导入和导出数据
  139. 11.0 概述
  140. 11.1 使用LOAD DATA和mysqlimport导入数据
  141. 11.2 导入CSV文件
  142. 11.3 导出MySQL的查询结果
  143. 11.4 导入和导出NULL值
  144. 11.5 编写数据导出程序
  145. 11.6 数据文件格式的转换
  146. 11.7 提取并重新排列数据文件的列
  147. 11.8 MySQL和Microsoft Excel之间的数据交换
  148. 11.9 以XML的格式导出查询结果
  149. 11.10 将XML导入到MySQL中
  150. 11.11 猜测数据文件中的表结构
  151. 第12章 验证与格式化数据
  152. 12.0 概述
  153. 12.1 通过SQL模式拒绝错误的输入值
  154. 12.2 验证和转换数据
  155. 12.3 使用模式匹配来验证数据
  156. 12.4 使用模式匹配广泛的内容类型
  157. 12.5 使用模式匹配数字值
  158. 12.6 使用模式匹配日期或时间
  159. 12.7 使用模式匹配电子邮件地址或URL
  160. 12.8 使用表的元数据验证数据
  161. 12.9 使用查找表验证数据
  162. 12.10 将两位数的年份值转换成四位数的形式
  163. 12.11 检查日期或时间各部分的有效性
  164. 12.12 编写处理日期的工具程序
  165. 12.13 导入非ISO格式的日期值
  166. 12.14 使用非ISO格式导出日期
  167. 12.15 后记
  168. 第13章 序列
  169. 13.0 概述
  170. 13.1 创建自增列并生成序列值
  171. 13.2 序列的定义
  172. 13.3 行的删除对序列造成的影响
  173. 13.4 设置MySQL用户账号
  174. 13.5 重新编号现有的序列
  175. 13.6 扩展序列的范围
  176. 13.7 重用序列的优选值
  177. 13.8 按特定的顺序给行重新编号
  178. 13.9 添加序列
  179. 13.10 同时管理多个自动增加的值
  180. 13.11 通过自动增量值关联表
  181. 13.12 将序列作为计数器
  182. 13.13 生成重复序列
  183. 第14章 连接与子查询
  184. 14.0 概述
  185. 14.1 表之间的结合
  186. 14.2 查找表之间不匹配的行
  187. 14.3 识别并删除不匹配或独立存在的行
  188. 14.4 表的自我比较
  189. 14.5 生成主从复合结构列表和汇总
  190. 14.6 列举多对多的关系
  191. 14.7 查找每组的小值或优选值
  192. 14.8 利用连接填充或找出列表中的缺口
  193. 14.9 利用Join控制查询的排序
  194. 14.10 在程序中引用连接输出的列名
  195. 第15章 统计技术
  196. 15.0 概述
  197. 15.1 计算描述性统计
  198. 15.2 分组描述性统计
  199. 15.3 生成频率分布
  200. 15.4 统计缺失的值
  201. 15.5 计算线性回归或相关系数
  202. 15.6 生成随机数
  203. 15.7 随机排序
  204. 15.8 随机选择数据
  205. 15.9 计算相邻两行之差
  206. 15.10 查找累积总和与移动平均值
  207. 15.11 指定排名
  208. 15.12 计算团队排名
  209. 第16章 处理重复数据
  210. 16.0 概述
  211. 16.1 防止表中出现重复数据
  212. 16.2 处理重复的加载数据
  213. 16.3 识别与统计重复数据的数量
  214. 1 移除表中的重复数据
  215. 第17章 事务处理
  216. 17.0 概述
  217. 17.1 选择事务存储引擎
  218. 17.2 使用SQL执行事务
  219. 17.3 在程序内执行事务
  220. 17.4 Perl程序中的事务处理
  221. 17.5 Ruby程序中的事务处理
  222. 17.6 PHP程序中的事务处理
  223. 17.7 Python程序中的事务处理
  224. 17.8 Java程序中的事务处理
  225. 第18章 MySQL的Web应用简介
  226. 18.0 概述
  227. 18.1 生成网页的基本方法
  228. 18.2 通过Apache运行Web脚本
  229. 18.3 通过Tomcat运行Web脚本
  230. 18.4 编码Web输出中的特殊字符
  231. 第19章 根据查询结果生成网页的内容
  232. 19.0 概述
  233. 19.1 根据查询结果显示段落
  234. 19.2 根据查询结果显示列表
  235. 19.3 根据查询结果显示表格
  236. 19.4 根据查询结果显示超链接
  237. 19.5 根据数据库的内容创建导航索引
  238. 19.6 存储图像或其他二进制数据
  239. 19.7 提供图像或其他二进制数据
  240. 19.8 提供横幅广告
  241. 19.9 提供查询结果的下载
  242. 第20章 利用MySQL处理Web输入
  243. 20.0 概述
  244. 20.1 编写生成Web表单的脚本
  245. 20.2 根据数据库的内容创建单选表单元素
  246. 20.3 根据数据库内容创建多选的表单元素
  247. 20.4 将数据库内容加载到表单中
  248. 20.5 收集Web输入
  249. 20.6 验证Web输入
  250. 20.7 将Web输入存储到数据库
  251. 20.8 处理文件上传
  252. 20.9 基于Web的数据库搜索
  253. 20.10 生成上下页的链接
  254. 20.11 生成点击标题排序的表格
  255. 20.12 网页的访问次数
  256. 20.13 记录网页的访问日志
  257. 20.14 利用MySQL记录Apache的日志
  258. 第21章 基于MySQL的Web会话管理
  259. 21.0 概述
  260. 21.1 在Perl应用程序中使用基于MySQL的会话
  261. 21.2 在Ruby应用程序中使用基于MySQL的存储
  262. 21.3 在PHP会话管理器中使用基于MySQL的存储
  263. 21.4 利用MySQL与Tomcat存储会话信息
  264. 第22章 服务器管理
  265. 22.0 概述
  266. 22.1 配置服务器
  267. 22.2 管理插件接口
  268. 22.3 控制服务器的日志记录
  269. 22.4 日志文件的轮转与淘汰
  270. 22.5 轮转日志表或淘汰日志表的记录
  271. 22.6 监控MySQL服务器
  272. 22.7 备份的创建和使用
  273. 第23章 数据库的安全
  274. 23.0 概述
  275. 23.1 了解mysql.user表
  276. 23.2 管理用户账号
  277. 23.3 密码策略
  278. 23.4 检查密码强度
  279. 23.5 密码过期
  280. 23.6 设置新密码
  281. 23.7 重置过期密码
  282. 23.8 查找并修复不安全的账号
  283. 23.9 禁止账号使用MySQL 4.1之前的密码
  284. 23.10 查找并删除匿名账号
  285. 23.11 修改“任何主机”和“多个主机”的账号
书名:MySQL经典实例(第三版)
作者:Paul DuBois
译者:马晶慧 译
国内出版社:中国电力出版社
出版时间:2019年05月
页数:840
书号:978-7-5198-2972-8
原版书书名:MySQL Cookbook, 3rd Edition
原版书出版商:O'Reilly Media
Paul DuBois
 
Paul DuBois是MySQL在线参考手册的第一批贡献者之一,这是在20世纪90年代后期MySQL的开放年代支持管理员和开发者的一个文档项目。他已经撰写了多本关于MySQL的著作,包括《MySQL Cookbook》的第1版。
 
 
购买选项
定价:148.00元
书号:978-7-5198-2972-8
出版社:中国电力出版社