MySQL快速入门到精通

MySQL快速入门到精通
作 者: 明日科技 编著
出版社: 化学工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  无

内容简介

《MySQL快速入门到精通》是一本侧重编程基础 实践的MySQL开发图书。为了保证读者可以学以致用,本书在实践方面循序渐进地进行3个层次的设计—基础知识实践、进阶应用实践和综合应用实践。全面介绍了使用MySQL进行数据库管理的知识,从学习到实践的角度出发,帮助读者快速掌握MySQL数据库的技能,拓宽职场的道路。本书通过各种示例将学习与应用相结合,做到轻松学习,零压力学习,通过案例对所学知识进行综合应用,通过开发实际项目将MySQL开发的各项技能应用到实际工作中。全书共24章,主要分为三篇(基础篇、实战篇、强化篇),其中基础篇包括初识MySQL,数据库操作,MySQL表结构管理,表数据的增、删、改操作,简单数据查询,多表数据查询,常用函数,数据完整性约束,索引,视图,存储过程与存储函数,触发器,事务处理与锁,数据库的备份与恢复,MySQL优化,用户和权限管理;实战篇包括各种编程语言连接MySQL数据库、操作数据表、数据查询、数据汇总、多表查询的应用、处理重复数据;强化篇包括Python MySQL实现在线学习笔记、Struts 2 Spring Hibernate MySQL实现网络商城。本书提供丰富的资源,包含多个实例、两个项目,力求为读者打造一本基础 应用 实践一体化精彩的MySQL数据库开发实例图书。本书不仅适合初学者、编程爱好者、准备毕业设计的学生、参加实习的“菜鸟”程序员,而且适合初、中级程序开发人员以及程序测试和维护人员阅读。

图书目录

第1篇 基础篇001

第1章 初识MySQL 002

1.1 了解MySQL 002

1.2 MySQL 8.0的新特性 003

1.3 MySQL服务器的安装与配置 004

1.3.1 MySQL下载 005

1.3.2 MySQL环境安装 007

1.3.3 启动、连接、断开和停止MySQL服务器 015

第2章 数据库操作 020

2.1 认识数据库 020

2.1.1 数据库基本概念 020

2.1.2 数据库常用对象 021

2.1.3 系统数据库 022

2.2 创建数据库 022

2.3 查看数据库 025

2.4 选择数据库 026

2.5 修改数据库 026

2.6 删除数据库 027

2.7 数据库存储引擎的应用 028

2.7.1 查询MySQL中支持的存储引擎 029

2.7.2 InnoDB存储引擎 030

2.7.3 MyISAM存储引擎 031

2.7.4 MEMORY存储引擎 032

2.7.5 如何选择存储引擎 032

2.8 综合案例——创建测试数据库 033

第3章 MySQL表结构管理 035

3.1 MySQL数据类型 035

3.1.1 数字类型 035

3.1.2 字符串类型 036

3.1.3 日期和时间类型 037

3.2 创建表 037

3.3 修改表结构 039

3.3.1 添加新字段及修改字段定义 039

3.3.2 修改字段名 040

3.3.3 删除字段 040

3.3.4 修改表名 040

3.4 删除表 041

3.5 综合案例 042

3.6 实战练习 043

第4章 表数据的增、删、改操作 044

4.1 插入表记录 044

4.1.1 使用INSERT语句插入数据 044

4.1.2 插入完整数据 045

4.1.3 插入数据记录的一部分 046

4.1.4 插入多条记录 046

4.1.5 使用INSERT…SET语句插入数据 047

4.2 修改表记录 048

4.3 删除表记录 049

4.3.1 通过DELETE语句删除数据 049

4.3.2 通过TRUNCATE TABLE语句删除数据 051

4.4 综合案例 051

4.5 实战练习 052

第5章 简单数据查询 054

5.1 基本查询语句 054

5.2 单 表 查 询 056

5.2.1 查询所有字段 056

5.2.2 查询指定字段 056

5.2.3 查询指定数据 057

5.2.4 带关键字IN的范围查询 058

5.2.5 带关键字BETWEEN AND的范围查询 058

5.2.6 模糊查询 059

5.2.7 查询空值 059

5.2.8 带AND的多条件查询 060

5.2.9 带OR的多条件查询 061

5.2.10 去除结果中的重复行 061

5.2.11 对查询结果排序 062

5.2.12 分组查询 063

5.2.13 限制查询结果的数量 064

5.3 聚合函数查询 065

5.3.1 COUNT()函数 065

5.3.2 SUM()函数 066

5.3.3 AVG()函数 066

5.3.4 MAX()函数 067

5.3.5 MIN()函数 067

5.4 综合案例 068

5.5 实战练习 068

第6章 多表数据查询 070

6.1 连接查询 070

6.1.1 内连接查询 070

6.1.2 外连接查询 071

6.2 子查询 072

6.2.1 带IN关键字的子查询 073

6.2.2 带比较运算符的子查询 074

6.2.3 带ANY关键字的子查询 074

6.2.4 带ALL关键字的子查询 074

6.3 合并查询结果 075

6.4 定义表和字段的别名 076

6.4.1 为表取别名 076

6.4.2 为字段取别名 077

6.5 使用正则表达式查询 078

6.5.1 匹配指定字符中的任意一个 079

6.5.2 使用“*”和“ ”来匹配多个字符 079

6.6 综合案例 079

6.7 实战练习 080

第7章 常用函数 082

7.1 MySQL函数 082

7.2 数学函数 083

7.3 字符串函数 086

7.4 日期和时间函数 091

7.5 条件判断函数 095

7.6 系统信息函数 096

7.7 其他函数 098

7.8 综合案例 100

7.9 实战练习 101

第8章 数据完整性约束 102

8.1 定义完整性约束 102

8.1.1 实体完整性 102

8.1.2 参照完整性 104

8.1.3 用户定义完整性 107

8.2 命名完整性约束 109

8.3 更新完整性约束 110

8.3.1 修改完整性约束 110

8.3.2 删除完整性约束 110

8.4 综合案例 111

8.5 实战练习 112

第9章 索引 113

9.1 索引概述 113

9.1.1 MySQL索引概述 113

9.1.2 MySQL索引分类 114

9.2 创建索引 114

9.2.1 在建立数据表时创建索引 114

9.2.2 在已建立的数据表中创建索引 119

9.2.3 修改数据表结构添加索引 122

9.3 删除索引 125

9.4 综合案例 126

9.5 实战练习 127

第10章 视图 128

10.1 视图概述 128

10.1.1 视图的概念 128

10.1.2 视图的作用 129

10.2 创建视图 129

10.2.1 查看创建视图的权限 129

10.2.2 在MySQL中创建视图 130

10.2.3 创建视图的注意事项 131

10.3 视图操作 131

10.3.1 查看视图 131

10.3.2 修改视图 134

10.3.3 更新视图 135

10.3.4 删除视图 137

10.4 综合案例 138

10.5 实战练习 138

第11章 存储过程与存储函数 139

11.1 创建存储过程和存储函数 139

11.1.1 创建存储过程 139

11.1.2 创建存储函数 141

11.2 存储过程和存储函数的调用 142

11.2.1 调用存储过程 142

11.2.2 调用存储函数 143

11.3 变量和光标的应用 143

11.3.1 变量的应用 143

11.3.2 光标的应用 145

11.4 查看存储过程和存储函数 147

11.4.1 SHOW STATUS语句 147

11.4.2 SHOW CREATE语句 147

11.5 修改存储过程和存储函数 148

11.6 删除存储过程和存储函数 149

11.7 综合案例 150

11.8 实战练习 151

第12章 触发器 153

12.1 MySQL触发器 153

12.1.1 创建MySQL触发器 153

12.1.2 创建具有多条执行语句的触发器 154

12.2 查看触发器 156

12.2.1 SHOW TRIGGERS 156

12.2.2 查看triggers表中触发器信息 156

12.3 使用触发器 158

12.3.1 触发器的执行顺序 158

12.3.2 使用触发器维护冗余数据 159

12.4 删除触发器 160

12.5 综合案例 161

12.6 实战练习 162

第13章 事务处理与锁 163

13.1 事务处理 163

13.1.1 事务的概念 163

13.1.2 事务处理的必要性 164

13.1.3 事务回滚 166

13.1.4 事务提交 167

13.1.5 MySQL中事务的应用 168

13.1.6 回退点 169

13.2 锁 170

13.2.1 MySQL锁的基本知识 170

13.2.2 表级锁 171

13.2.3 行级锁 175

13.2.4 什么是死锁与如何避免死锁 176

13.3 综合案例 177

13.4 实战练习 177

第14章 数据库的备份与恢复 179

14.1 数据备份 179

14.1.1 使用mysqldump命令备份 179

14.1.2 直接复制整个数据库目录 182

14.1.3 使用mysqlhotcopy工具快速备份 183

14.2 数据恢复 183

14.2.1 使用mysql命令还原 183

14.2.2 直接复制到数据库目录 184

14.3 数据库迁移 184

14.3.1 相同版本的MySQL数据库之间的迁移 184

14.3.2 不同数据库之间的迁移 185

14.4 表的导出和导入 185

14.4.1 用SELECT …INTO OUTFILE导出文本文件 186

14.4.2 用mysqldump命令导出文本文件 189

14.4.3 用mysql命令导出文本文件 192

14.5 综合案例 193

14.6 实战练习 194

第15章 MySQL优化 196

15.1 优化概述 196

15.2 优化查询 197

15.2.1 分析查询语句 197

15.2.2 索引对查询速度的影响 198

15.2.3 使用索引查询 199

15.3 优化数据库结构 200

15.3.1 将字段很多的表分解成多个表 200

15.3.2 增加中间表 201

15.3.3 优化插入记录的速度 202

15.3.4 分析表、检查表和优化表 202

15.4 查询缓存 204

15.5 子查询优化多表查询 204

15.6 优化表设计 205

15.7 综合案例 206

15.8 实战练习 207

第16章 用户和权限管理 208

16.1 用户管理 208

16.1.1 创建用户 208

16.1.2 删除用户 209

16.1.3 重命名用户 209

16.2 管理访问权限 210

16.2.1 查看用户权限 210

16.2.2 设置用户权限 210

16.3 MySQL数据库常见安全问题 214

16.3.1 权限更改何时生效 214

16.3.2 设置账户密码 214

16.3.3 如何使密码更安全 215

16.4 综合案例 215

16.5 实战练习 216

第2篇 实战篇217

第17章 各种编程语言连接MySQL数据库 218

17.1 在Python程序中连接MySQL数据库 218

17.1.1 安装PyMySQL 218

17.1.2 连接MySQL数据库 218

17.1.3 创建MySQL数据表 219

17.1.4 操作MySQL数据表 220

17.2 在C语言程序中连接MySQL数据库 221

17.2.1 配置MySQL依赖文件及库 221

17.2.2 连接MySQL数据库 223

17.3 在Java程序中连接MySQL数据库 223

17.3.1 JDBC中常用的类和接口 224

17.3.2 数据库操作 228

17.4 在PHP程序中连接MySQL数据库 231

17.4.1 PHP操作MySQL数据库的步骤 231

17.4.2 使用PHP操作MySQL数据库 232

17.4.3 PHP管理MySQL数据库中的数据 234

第18章 操作数据表 241

18.1 插入单行数据 241

18.1.1 插入整行数据 241

18.1.2 插入部分行数据 242

18.2 批量插入数据 243

18.2.1 通过VALUES关键字插入多行数据 243

18.2.2 通过查询语句插入多行数据 244

18.3 修改数据 245

18.2.1 使用UPDATE语句更新列值 245

18.3.2 依据外表值更新数据 247

18.4 删除数据 248

18.4.1 使用DELETE语句删除数据 248

18.4.2 使用TRUNCATE TABLE语句删除数据 249

第19章 数据查询 251

19.1 模糊查询 251

19.1.1 LIKE谓词 251

19.1.2 “%”通配符的使用 251

19.1.3 “_”通配符的使用 252

19.1.4 使用ESCAPE定义转义字符 253

19.2 查询日期型数据 253

19.2.1 转换日期格式 254

19.2.2 计算两个日期的间隔天数 255

19.2.3 按指定日期查询数据 255

19.3 查询指定范围的数据 256

19.3.1 查询两值之间的数据 256

19.3.2 查询两个日期之间的数据 257

19.3.3 在BETWEEN中使用日期函数 257

19.3.4 查询不在两数之间的数据 258

第20章 数据汇总 260

20.1 多列求和 260

20.2 求平均值 261

20.2.1 AVG()函数的普通用法 262

20.2.2 使用WHERE子句限制AVG()函数统计的行 262

20.3 求最大值与最小值 263

第21章 多表查询的应用 265

21.1 合并多个结果集 265

21.1.1 UNION操作符 265

21.1.2 通过UNION ALL返回重复的行 268

21.2 使用子查询关联数据 268

21.3 内连接查询数据 270

21.3.1 等值连接 270

21.3.2 不等值连接 271

21.3.3 自然连接 271

第22章 处理重复数据 273

22.1 防止表中出现重复数据 273

22.2 过滤重复数据 276

22.3 统计重复数据的数量 277

22.4 移除表中的重复数据 277

第3篇 强化篇279

第23章 Python MySQL实现在线学习笔记 280

23.1 需求分析 280

23.2 系统设计 280

23.3 系统开发 283

23.4 技术准备 284

23.4.1 PyMySQL模块 284

23.4.2 WTForms模块 285

23.5 数据库设计 286

23.5.1 数据库概要说明 286

23.5.2 创建数据表 286

23.5.3 数据库操作类 287

23.6 用户模块设计 289

23.6.1 用户注册功能实现 290

23.6.2 用户登录功能实现 292

23.6.3 退出登录功能实现 295

23.6.4 用户权限管理功能实现 296

23.7 笔记模块设计 296

23.7.1 笔记列表功能实现 297

23.7.2 添加笔记功能实现 298

23.7.3 编辑笔记功能实现 299

23.7.4 删除笔记功能实现 300

第24章 Struts 2 Spring Hibernate MySQL实现网络商城 302

24.1 开发背景 302

24.2 需求分析 302

24.3 系统设计 303

24.3.1 功能结构 303

24.3.2 系统流程图 303

24.3.3 开发环境 304

24.3.4 系统预览 305

24.3.5 文件夹组织结构 306

24.4 数据库设计 307

24.4.1 数据库概念设计 307

24.4.2 创建数据库及数据表 308

24.5 公共模块的设计 310

24.5.1 泛型工具类 311

24.5.2 数据持久化类 311

24.5.3 分页操作 313

24.5.4 实体映射 314

24.6 项目环境搭建 319

24.6.1 配置Struts 2 319

24.6.2 配置Hibernate 321

24.6.3 配置Spring 322

24.6.4 配置web.xml 323

24.7 前台商品信息查询模块设计 324

24.7.1 前台商品信息查询模块概述 324

24.7.2 前台商品信息查询模块技术分析 324

24.7.3 前台商品信息查询模块实现过程 325

24.8 购物车模块设计 327

24.8.1 购物车模块概述 327

24.8.2 购物车模块技术分析 327

24.8.3 购物车基本功能实现过程 328

24.8.4 订单相关功能实现过程 330

24.9 后台商品管理模块设计 333

24.9.1 后台商品管理模块概述 333

24.9.2 后台商品管理模块技术分析 333

24.9.3 商品管理功能实现过程 334

24.9.4 商品类别管理功能实现过程 338