新書推薦:
《
基于鲲鹏的分布式图分析算法实战
》
售價:NT$
495.0
《
中国历史研究入门(全二册)
》
售價:NT$
1290.0
《
夺回大脑 如何靠自己走出强迫
》
售價:NT$
299.0
《
夏天,19岁的肖像(青鲤文库)岛田庄司两次入围日本通俗文学奖直木奖的作品 ,同名电影由黄子韬主演!
》
售價:NT$
225.0
《
图解机械工程入门
》
售價:NT$
440.0
《
股市长线法宝(第6版)
》
售價:NT$
640.0
《
中文版SOLIDWORKS 2024机械设计从入门到精通(实战案例版)
》
售價:NT$
450.0
《
纯数学教程
》
售價:NT$
390.0
|
編輯推薦: |
MySQL被设计为一个可移植的数据库,几乎能在当前所有的操作系统上运行,如Linux、Solaris、FreeBSD、Mac和Windows。开源MySQL数据库发展到今天,已经具有了非常广泛的用户基础,市场证明MySQL具有性价比高、使用灵活、应用广泛和具有良好支持的特点。
MySQL 8做了大量的改进,性能比MySQL5.7快2倍!本书把MySQL 8的新
特性分散到各章,结合实例进行讲解并做提示,方便读者快速掌握MySQL数据库管理技术以及MySQL 8的新特性。
|
內容簡介: |
本书主要内容包括MySQL的安装与配置、数据库的创建、数据表的创建、数据类型和运算符、MySQL函数、查询数据、数据表的操作(插入、更新与删除数据)、索引、存储过程和函数、视图、触发器、用户管理、数据备份与还原、MySQL日志、性能优化、MySQL Replication、MySQL Workbench、MySQL Utilities、MySQL Proxy、PHP操作MySQL数据库和PDO数据库抽象类库等。*后通过3个综合案例的数据库设计,进一步讲述MySQL在实际工作中的应用。 本书共有480个实例和16个综合案例,还有大量的经典习题。随书赠送了近20小时培训班形式的视频教学录像,详细讲解了书中每一个知识点和每一个数据库操作的方法和技巧,同时还提供了本书所有例子的源代码,读者可以直接查看和调用。 本书注重实战操作,帮助读者循序渐进地掌握MySQL中的各项技术,非常适合MySQL数据库初学者、MySQL数据库开发人员和MySQL数据库管理员阅读,同时也能作为高等院校和培训学校相关专业师生的教学用书。
|
關於作者: |
王英英,从事多年网站开发和APP程序开发,精通各种编程语言、网络编程和数据库开发知识,具有丰富的实战开发经验。对Web前端、Java、Python有深入研究,并出版过多本相关畅销书,颇受广大读者认可。
|
目錄:
|
目 录
第1章 初识MySQL 1
1.1 数据库基础 1
1.1.1 什么是数据库 2
1.1.2 表 2
1.1.3 数据类型 2
1.1.4 主键 3
1.2 数据库技术构成 3
1.2.1 数据库系统 3
1.2.2 SQL语言 4
1.2.3 数据库访问接口 5
1.3 什么是MySQL 5
1.3.1 客户端服务器软件 5
1.3.2 MySQL版本 6
1.3.3 MySQL的优势 7
1.4 MySQL工具 7
1.4.1 MySQL命令行实用程序 7
1.4.2 MySQL Workbench 8
1.5 MySQL 8.0的新特性简述 9
1.6 如何学习MySQL 11
第2章 MySQL的安装与配置 13
2.1 Windows平台下安装与配置MySQL 8.0 13
2.1.1 安装MySQL 8.0 14
2.1.2 配置MySQL 8.0 17
2.2 启动服务并登录MySQL数据库 22
2.2.1 启动MySQL服务 22
2.2.2 登录MySQL数据库 24
2.2.3 配置Path变量 25
2.3 MySQL常用图形管理工具 27
2.4 Linux平台下安装与配置MySQL 8.0 28
2.4.1 Linux操作系统下的MySQL版本介绍 28
2.4.2 安装和配置MySQL的RPM包 29
2.4.3 安装和配置MySQL的源码包 32
2.5 专家解惑 32
2.6 经典习题 33
第3章 数据库的基本操作 34
3.1 创建数据库 34
3.2 删除数据库 36
3.3 MySQL 8.0的新特性系统表全部为InnoDB表 36
3.4 综合案例数据库的创建和删除 37
3.5 专家解惑 39
3.6 经典习题 39
第4章 数据表的基本操作 40
4.1 创建数据表 40
4.1.1 创建表的语法形式 41
4.1.2 使用主键约束 42
4.1.3 使用外键约束 43
4.1.4 使用非空约束 44
4.1.5 使用唯一性约束 45
4.1.6 使用默认约束 46
4.1.7 设置表的属性值自动增加 46
4.2 查看数据表结构 47
4.2.1 查看表基本结构语句DESCRIBE 47
4.2.2 查看表详细结构语句SHOW CREATE TABLE 48
4.3 修改数据表 49
4.3.1 修改表名 49
4.3.2 修改字段的数据类型 50
4.3.3 修改字段名 51
4.3.4 添加字段 52
4.3.5 删除字段 54
4.3.6 修改字段的排列位置 55
4.3.7 更改表的存储引擎 56
4.3.8 删除表的外键约束 57
4.4 删除数据表 58
4.4.1 删除没有被关联的表 59
4.4.2 删除被其他表关联的主表 59
4.5 MySQL 8.0的新特性1默认字符集改为utf8mb4 61
4.6 MySQL 8.0的新特性2自增变量的持久化 62
4.7 综合案例数据表的基本操作 64
4.8 专家解惑 72
4.9 经典习题 72
第5章 数据类型和运算符 74
5.1 MySQL数据类型介绍 74
5.1.1 整数类型 75
5.1.2 浮点数类型和定点数类型 76
5.1.3 日期与时间类型 78
5.1.4 文本字符串类型 89
5.1.5 二进制字符串类型 94
5.2 如何选择数据类型 96
5.3 常见运算符介绍 98
5.3.1 运算符概述 98
5.3.2 算术运算符 98
5.3.3 比较运算符 100
5.3.4 逻辑运算符 107
5.3.5 位运算符 110
5.3.6 运算符的优先级 112
5.4 综合案例运算符的使用 113
5.5 专家解惑 115
5.6 经典习题 116
第6章 MySQL函数 117
6.1 MySQL函数简介 117
6.2 数学函数 118
6.2.1 绝对值函数ABSx和返回圆周率的函数PI 118
6.2.2 平方根函数SQRTx和求余函数MODx,y 118
6.2.3 获取整数的函数CEILx、CEILINGx和FLOORx 119
6.2.4 获取随机数的函数RAND和RANDx 120
6.2.5 函数ROUNDx、ROUNDx,y和TRUNCATEx,y 120
6.2.6 符号函数SIGNx 121
6.2.7 幂运算函数POWx,y、POWERx,y和EXPx 122
6.2.8 对数运算函数LOGx和LOG10x 122
6.2.9 角度与弧度相互转换的函数RADIANSx和DEGREESx 123
6.2.10 正弦函数SINx和反正弦函数ASINx 123
6.2.11 余弦函数COSx和反余弦函数ACOSx 124
6.2.12 正切函数、反正切函数和余切函数 124
6.3 字符串函数 125
6.3.1 计算字符串字符数的函数和字符串长度的函数 125
6.3.2 合并字符串函数CONCATs1,s2,、CONCAT_WSx,s1,s2, 126
6.3.3 替换字符串的函数INSERTs1,x,len,s2 126
6.3.4 字母大小写转换函数 127
6.3.5 获取指定长度的字符串的函数LEFTs,n和RIGHTs,n 128
6.3.6 填充字符串的函数LPADs1,len,s2和RPADs1,len,s2 128
6.3.7 删除空格的函数LTRIMs、RTRIMs和TRIMs 129
6.3.8 删除指定字符串的函数TRIMs1 FROM s 130
6.3.9 重复生成字符串的函数REPEATs,n 130
6.3.10 空格函数SPACEn和替换函数REPLACEs,s1,s2 130
6.3.11 比较字符串大小的函数STRCMPs1,s2 131
6.3.12 获取子串的函数SUBSTRINGs,n,len和MIDs,n,len 131
6.3.13 匹配子串开始位置的函数 132
6.3.14 字符串逆序的函数REVERSEs 133
6.3.15 返回指定位置的字符串的函数 133
6.3.16 返回指定字符串位置的函数FIELDs,s1,s2,,sn 133
6.3.17 返回子串位置的函数FIND_IN_SETs1,s2 134
6.3.18 选取字符串的函数MAKE_SETx,s1,s2,,sn 134
6.4 日期和时间函数 135
6.4.1 获取当前日期的函数和获取当前时间的函数 135
6.4.2 获取当前日期和时间的函数 135
6.4.3 UNIX时间戳函数 136
6.4.4 返回UTC日期的函数和返回UTC时间的函数 137
6.4.5 获取月份的函数MONTHdate和MONTHNAMEdate 137
6.4.6 获取星期的函数DAYNAMEd、DAYOFWEEKd和WEEKDAYd 138
6.4.7 获取星期数的函数WEEKd和WEEKOFYEARd 138
6.4.8 获取天数的函数DAYOFYEARd和DAYOFMONTHd 139
6.4.9 获取年份、季度、小时、分钟和秒钟的函数 140
6.4.10 获取日期的指定值的函数EXTRACTtype FROM date 141
6.4.11 时间和秒钟转换的函数 141
6.4.12 计算日期和时间的函数 142
6.4.13 将日期和时间格式化的函数 145
6.5 条件判断函数 147
6.5.1 IFexpr,v1,v2函数 147
6.5.2 IFNULLv1,v2函数 148
6.5.3 CASE函数 148
6.6 系统信息函数 149
6.6.1 获取MySQL版本号、连接数和数据库名的函数 149
6.6.2 获取用户名的函数 151
6.6.3 获取字符串的字符集和排序方式的函数 151
6.6.4 获取最后一个自动生成的ID值的函数 152
6.7 MySQL 8.0的新特性1加密函数 154
6.7.1 加密函数MD5str 154
6.7.2 加密函数SHAstr 154
6.7.3 加密函数SHA2str, hash_length 154
6.8 其他函数 155
6.8.1 格式化函数FORMATx,n 155
6.8.2 不同进制的数字进行转换的函数 155
6.8.3 IP地址与数字相互转换的函数 156
6.8.4 加锁函数和解锁函数 156
6.8.5 重复执行指定操作的函数 157
6.8.6 改变字符集的函数 158
6.8.7 改变数据类型的函数 158
6.9 MySQL 8.0的新特性2窗口函数 159
6.10 综合案例MySQL函数的使用 160
6.11 专家解惑 163
6.12 经典习题 164
第7章 查询数据 165
7.1 基本查询语句 165
7.2 单表查询 168
7.2.1 查询所有字段 168
7.2.2 查询指定字段 169
7.2.3 查询指定记录 171
7.2.4 带IN关键字的查询 172
7.2.5 带BETWEEN AND的范围查询 174
7.2.6 带LIKE的字符匹配查询 175
7.2.7 查询空值 176
7.2.8 带AND的多条件查询 178
7.2.9 带OR的多条件查询 179
7.2.10 查询结果不重复 180
7.2.11 对查询结果排序 181
7.2.12 分组查询 184
7.2.13 使用LIMIT限制查询结果的数量 189
7.3 使用集合函数查询 190
7.3.1 COUNT函数 191
7.3.2 SUM函数 192
7.3.3 AVG函数 193
7.3.4 MAX函数 194
7.3.5 MIN函数 195
7.4 连接查询 196
7.4.1 内连接查询 196
7.4.2 外连接查询 199
7.4.3 复合条件连接查询 201
7.5 子查询 202
7.5.1 带ANY、SOME关键字的子查询 202
7.5.2 带ALL关键字的子查询 203
7.5.3 带EXISTS关键字的子查询 203
7.5.4 带IN关键字的子查询 204
7.5.5 带比较运算符的子查询 206
7.6 合并查询结果 208
7.7 为表和字段取别名 210
7.7.1 为表取别名 210
7.7.2 为字段取别名 212
7.8 使用正则表达式查询 213
7.8.1 查询以特定字符或字符串开头的记录 214
7.8.2 查询以特定字符或字符串结尾的记录 215
7.8.3 用符号"."来替代字符串中的任意一个字符 215
7.8.4 使用"*"和" "来匹配多个字符 216
7.8.5 匹配指定字符串 216
7.8.6 匹配指定字符中的任意一个 217
7.8.7 匹配指定字符以外的字符 218
7.8.8 使用{n,}或者{n,m}来指定字符串连续出现的次数 219
7.9 MySQL 8.0的新特性1 GROUP BY不再隐式排序 220
7.10 MySQL 8.0的新特性2通用表表达式 222
7.11 综合案例数据表查询操作 225
7.12 专家解惑 232
7.13 经典习题 233
第8章 插入、更新与删除数据 234
8.1 插入数据 234
8.1.1 为表的所有字段插入数据 235
8.1.2 为表的指定字段插入数据 236
8.1.3 同时插入多条记录 238
8.1.4 将查询结果插入到表中 239
8.2 更新数据 241
8.3 删除数据 243
8.4 为表增加计算列 245
8.5 MySQL 8.0的新特性DDL的原子化 246
8.6 综合案例记录的插入、更新和删除 247
8.7 专家解惑 251
8.8 经典习题 252
第9章 索 引 253
9.1 索引简介 253
9.1.1 索引的含义和特点 254
9.1.2 索引的分类 254
9.1.3 索引的设计原则 255
9.2 创建索引 255
9.2.1 创建表的时候创建索引 256
9.2.2 在已经存在的表上创建索引 261
9.3 删除索引 267
9.4 MySQL 8.0的新特性1支持降序索引 269
9.5 MySQL 8.0的新特性2统计直方图 272
9.5.1 直方图的优点 272
9.5.2 直方图的基本操作 273
9.6 综合案例创建索引 274
9.7 专家解惑 277
9.8 经典习题 277
第10章 存储过程和函数 278
10.1 创建存储过程和函数 279
10.1.1 创建存储过程 279
10.1.2 创建存储函数 281
10.1.3 变量的使用 282
10.1.4 定义条件和处理程序 283
10.1.5 光标的使用 286
10.1.6 流程控制的使用 287
10.2 调用存储过程和函数 291
10.2.1 调用存储过程 291
10.2.2 调用存储函数 292
10.3 查看存储过程和函数 293
10.3.1 使用SHOW STATUS语句查看存储过程和函数的状态 293
10.3.2 使用SHOW CREATE语句查看存储过程和函数的定义 294
10.3.3 从information_schema.Routines表中查看存储过程和 函数的信息 295
10.4 修改存储过程和函数 296
10.5 删除存储过程和函数 298
10.6 MySQL 8.0的新特性全局变量的持久化 298
10.7 综合案例创建存储过程和函数 299
10.8 专家解惑 302
10.9 经典习题 303
第11章 视 图 304
11.1 视图概述 304
11.1.1 视图的含义 305
11.1.2 视图的作用 305
11.2 创建视图 306
11.2.1 创建视图的语法形式 306
11.2.2 在单表上创建视图 307
11.2.3 在多表上创建视图 307
11.3 查看视图 308
11.3.1 使用DESCRIBE语句查看视图基本信息 308
11.3.2 使用SHOW TABLE STATUS语句查看视图基本信息 309
11.3.3 使用SHOW CREATE VIEW语句查看视图详细信息 310
11.3.4 在views表中查看视图详细信息 311
11.4 修改视图 312
11.4.1 使用CREATE OR REPLACE VIEW语句修改视图 312
11.4.2 使用ALTER语句修改视图 313
11.5 更新视图 314
11.6 删除视图 316
11.7 综合案例视图应用 317
11.8 专家解惑 325
11.9 经典习题 326
第12章 MySQL触发器 327
12.1 创建触发器 327
12.1.1 创建只有一个执行语句的触发器 328
12.1.2 创建有多个执行语句的触发器 329
12.2 查看触发器 331
12.2.1 利用SHOW TRIGGERS语句查看触发器信息 331
12.2.2 在triggers表中查看触发器信息 333
12.3 触发器的使用 334
12.4 删除触发器 335
12.5 综合案例触发器的使用 336
12.6 专家解惑 338
12.7 经典习题 338
第13章 MySQL权限与安全管理 339
13.1 权 限 表 339
13.1.1 user表 340
13.1.2 db表 342
13.1.3 tables_priv表和columns_priv表 343
13.1.4 procs_priv表 344
13.2 账户管理 344
13.2.1 登录和退出MySQL服务器 345
13.2.2 新建普通用户 346
13.2.3 删除普通用户 348
13.2.4 root用户修改自己的密码 349
13.2.5 root用户修改普通用户密码 350
13.3 权限管理 351
13.3.1 MySQL的各种权限 351
13.3.2 授权 353
13.3.3 收回权限 355
13.3.4 查看权限 356
13.4 访问控制 357
13.4.1 连接核实阶段 357
13.4.2 请求核实阶段 357
13.5 提升安全性 358
13.5.1 AES 256加密 358
13.5.2 密码到期更换策略 360
13.5.3 安全模式安装 361
13.6 MySQL 8.0的新特性管理角色 362
13.7 综合案例综合管理用户权限 363
13.8 专家解惑 366
13.9 经典习题 366
第14章 数据备份与恢复 368
14.1 数据备份 368
14.1.1 使用MySQLdump命令备份 369
14.1.2 直接复制整个数据库目录 374
14.1.3 使用MySQLhotcopy工具快速备份 375
14.2 数据恢复 375
14.2.1 使用MySQL命令恢复 375
14.2.2 直接复制到数据库目录 376
14.2.3 MySQLhotcopy快速恢复 377
14.3 数据库迁移 377
14.3.1 相同版本的MySQL数据库之间的迁移 377
14.3.2 不同版本的MySQL数据库之间的迁移 378
14.3.3 不同数据库之间的迁移 378
14.4 表的导出和导入 378
14.4.1 使用SELECTINTO OUTFILE导出文本文件 379
14.4.2 使用MySQLdump命令导出文本文件 383
14.4.3 使用MySQL命令导出文本文件 385
14.4.4 使用LOAD DATA INFILE方式导入文本文件 389
14.4.5 使用MySQLimport命令导入文本文件 391
14.5 综合案例数据的备份与恢复 392
14.6 专家解惑 396
14.7 经典习题 397
第15章 MySQL日志 398
15.1 日志简介 398
15.2 二进制日志 399
15.2.1 启动和设置二进制日志 399
15.2.2 查看二进制日志 401
15.2.3 删除二进制日志 402
15.2.4 使用二进制日志恢复数据库 404
15.2.5 暂时停止二进制日志功能 404
15.3 错误日志 405
15.3.1 启动和设置错误日志 405
15.3.2 查看错误日志 405
15.3.3 删除错误日志 406
15.4 通用查询日志 407
15.4.1 启动通用查询日志 407
15.4.2 查看通用查询日志 407
15.4.3 删除通用查询日志 408
15.5 慢查询日志 408
15.5.1 启动和设置慢查询日志 409
15.5.2 查看慢查询日志 409
15.5.3 删除慢查询日志 410
15.6 MySQL 8.0的新特性日志分类更详细 410
15.7 综合案例MySQL日志的综合管理 410
15.8 专家解惑 416
15.9 经典习题 416
第16章 性能优化 418
16.1 优化简介 418
16.2 优化查询 419
16.2.1 分析查询语句 419
16.2.2 索引对查询速度的影响 423
16.2.3 使用索引查询 424
16.2.4 优化子查询 426
16.3 优化数据库结构 427
16.3.1 将字段很多的表分解成多个表 427
16.3.2 增加中间表 428
16.3.3 增加冗余字段 430
16.3.4 优化插入记录的速度 430
16.3.5 分析表、检查表和优化表 432
16.4 优化MySQL服务器 434
16.4.1 优化服务器硬件 434
16.4.2 优化MySQL的参数 434
16.5 临时表性能优化 435
16.6 服务器语句超时处理 437
16.7 创建全局通用表空间 438
16.8 MySQL 8.0的新特性1支持不可见索引 438
16.9 MySQL 8.0的新特性2增加资源组 440
16.10 综合案例全面优化MySQL服务器 442
16.11 专家解惑 444
16.12 经典习题 445
第17章 MySQL Replication 446
17.1 MySQL Replication概述 446
17.2 Windows环境下的MySQL主从复制 447
17.2.1 复制前的准备工作 447
17.2.2 Windows环境下实现主从复制 448
17.2.3 Windows环境下主从复制测试 455
17.3 Linux环境下的MySQL复制 456
17.3.1 下载并安装MySQL 8.0 456
17.3.2 单机主从复制前的准备工作 458
17.3.3 MySQLd_multi实现单机主从复制 461
17.3.4 不同服务器之间实现主从复制 468
17.3.5 MySQL 主要复制启动选项 470
17.3.6 指定复制的数据库或者表 471
17.4 查看Slave的复制进度 478
17.5 日常管理和维护 479
17.5.1 了解服务器的状态 480
17.5.2 服务器复制出错的原因 481
17.6 切换主从服务器 483
17.7 多源复制的改进 487
17.8 专家解惑 489
17.9 经典习题 490
第18章 MySQL Workbench 的使用 492
18.1 MySQL Workbench简介 492
18.1.1 MySQL Workbench 的概述 493
18.1.2 MySQL Workbench 的优势 493
18.1.3 MySQL Workbench 的安装 493
18.2 SQL Development的基本操作 495
18.2.1 创建数据库连接 495
18.2.2 创建新的数据库 496
18.2.3 创建和删除新的数据表 498
18.2.4 添加、修改表记录 501
18.2.5 查询表记录 502
18.2.6 修改表结构 503
18.3 Data Modeling的基本操作 504
18.3.1 建立ER模型 504
18.3.2 导入ER模型 509
18.4 Server Administration的基本操作 511
18.4.1 管理MySQL用户 511
18.4.2 备份MySQL数据库 514
18.4.3 恢复MySQL数据库 517
18.5 专家解惑 518
18.6 经典习题 518
第19章 MySQL管理利器MySQL Utilities 519
19.1 MySQL Utilities概述 519
19.2 安装与配置 520
19.2.1 下载与安装MySQL Utilities 520
19.2.2 MySQL Utilities连接数据库 522
19.3 管理与维护 522
19.3.1 使用mysqldbcompare比较数据 523
19.3.2 使用mysqldbcopy复制数据 523
19.3.3 使用mysqldbexport导出数据 524
19.3.4 使用mysqldbimport导入数据 524
19.3.5 使用mysqldiff比较对象的定义 525
19.4 专家解惑 525
19.5 经典习题 526
第20章 读写分离的利器MySQL Proxy 527
20.1 概述 527
20.2 安装与配置 528
20.2.1 下载与安装MySQL Proxy 529
20.2.2 配置MySQL Proxy参数 529
20.2.3 配置Path变量 532
20.3 使用MySQL Proxy实现读写分离 533
20.4 专家解惑 534
20.5 经典习题 535
第21章 精通MySQL存储引擎 536
21.1 MySQL架构 536
21.1.1 MySQL物理文件的组成 537
21.1.2 MySQL各逻辑块简介 539
21.1.3 MySQL各逻辑块协调工作 541
21.2 数据库存储引擎 543
21.2.1 MySQL存储引擎简介 543
21.2.2 InnoDB存储引擎 545
21.2.3 MyISAM存储引擎 545
21.2.4 MEMORY存储引擎 546
21.2.5 MERGE存储引擎 546
21.2.6 BerkeleyDB存储引擎 548
21.3 认识MySQL的锁定机制 549
21.4 MyISAM的锁定机制 554
21.4.1 MyISAM表级锁的锁模式 554
21.4.2 获取MyISAM表级锁的争用情况 556
21.4.3 MyISAM表级锁加锁方法 557
21.4.4 MyISAM Concurrent Insert的特性 559
21.4.5 MyISAM表级锁优化建议 561
21.5 InnoDB的锁定机制 562
21.5.1 InnoDB行级锁模式 562
21.5.2 获取InnoDB行级锁的争用情况 567
21.5.3 InnoDB行级锁的实现方法 569
21.5.4 间隙锁Net-Key锁 575
21.5.5 InnoDB 在不同隔离级别下加锁的差异 576
21.5.6 InnoDB 存储引擎中的死锁 576
21.5.7 InnoDB行级锁优化建议 579
21.6 InnoDB存储引擎的在线操作 580
21.6.1 在线添加主键 580
21.6.2 在线增大VARCHAR列长 581
21.6.3 在线重命名索引 582
21.7 MySQL 8.0的新特性1支持JSON类型 582
21.8 MySQL 8.0的新特性2全文索引的加强 584
21.9 MySQL 8.0的新特性3 动态修改InnoDB缓冲池的大小 586
21.10 MySQL 8.0的新特性4表空间数据加密 587
21.11 MySQL 8.0的新特性5跳过锁等待 588
21.12 专家解惑 589
21.13 经典习题 590
第22章 PHP操作MySQL数据库 591
22.1 PHP访问MySQL数据库的一般步骤 591
22.2 连接数据库前的准备工作 592
22.3 访问数据库 593
22.3.1 使用mysqli_connect函数连接MySQL服务器 593
22.3.2 使用mysqli_select_db函数更改默认的数据库 594
22.3.3 使用mysqli_close函数关闭MySQL连接 595
22.3.4 使用mysqli_query函数执行SQL语句 595
22.3.5 获取查询结果集中的记录数 596
22.3.6 获取结果集中的一条记录作为枚举数组 597
22.3.7 获取结果集中的记录作为关联数组 598
22.3.8 获取结果集中的记录作为对象 599
22.3.9 使用mysqli_fetch_array函数获取结果集记录 599
22.3.10 使用mysqli_free_result函数释放资源 600
22.4 综合实例1PHP操作MySQL数据库 600
22.5 综合实例2使用insert语句动态添加用户信息 602
22.6 综合实例3使用select语句查询数据信息 604
22.7 专家解惑 605
第23章 PDO数据库抽象类库 607
23.1 PDO概述 607
23.2 PDO的安装 608
23.3 使用PDO操作MySQL 608
23.3.1 连接MySQL数据库的方法 609
23.3.2 使用PDO时的try catch错误处理结构 610
23.3.3 使用PDO执行SQL的选择语句 612
23.3.4 使用PDO获取返回数据的类方法 613
23.3.5 使用PDO执行SQL的添加、修改语句 615
23.3.6 使用PDO执行SQL的删除语句 616
23.4 综合实例PDO的prepare表述 616
23.5 专家解惑 618
第24章 综合项目1开发网上商城 619
24.1 系统功能描述 619
24.2 系统功能分析 620
24.2.1 系统功能分析 620
24.2.2 数据流程和数据库 621
24.3 代码的具体实现 623
24.4 程序运行 633
第25章 综合项目2论坛管理系统数据库设计 635
25.1 系统概述 635
25.2 系统功能 636
25.3 数据库设计和实现 637
25.3.1 设计方案图表 637
25.3.2 设计表 639
25.3.3 设计索引 642
25.3.4 设计视图 643
25.3.5 设计触发器 644
第26章 综合项目3新闻发布系统数据库设计 646
26.1 系统概述 646
26.2 系统功能 647
26.3 数据库设计和实现 648
26.3.1 设计表 648
26.3.2 设计索引 652
26.3.3 设计视图 653
26.3.4 设计触发器 654
|
內容試閱:
|
前 言
本书是面向MySQL数据库管理系统初学者的一本高质量的入门图书。目前国内MySQL技术需求旺盛,各大知名企业都高薪招聘技术能力强的MySQL数据库开发人员和管理人员。本书根据这样的需求,以MySQL 8版本为基础,针对初学者量身定做,内容注重实战,通过实例的操作与分析,引领读者快速学习和掌握MySQL开发和管理技术。
本书内容
第1章主要介绍数据库的技术构成和什么是MySQL,包括数据库基本概念和MySQL工具。
第2章介绍MySQL 8的安装和配置,主要包括Windows平台下的安装和配置、Linux平台下的安装和配置、如何启动MySQL服务、如何更改MySQL的配置等。
第3章介绍MySQL数据库的基本操作,包括创建数据库、删除数据库和MySQL数据库存储引擎。
第4章介绍MySQL数据表的基本操作,主要包括创建数据表、查看数据表结构、修改数据表和删除数据表。
第5章介绍MySQL中的数据类型和运算符,主要包括MySQL数据类型介绍、如何选择数据类型和常见运算符介绍。
第6章介绍MySQL函数,包括数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数、加密函数和其他函数。
第7章介绍如何查询数据表中的数据,主要包括基本查询语句、单表查询、使用聚合函数查询、连接查询、子查询、合并查询结果、为表和字段取别名以及使用正则表达式查询。
第8章介绍如何插入、更新与删除数据,包括插入数据、更新数据、删除数据。
第9章介绍MySQL中的索引,包括索引简介、如何创建各种类型的索引和如何删除索引。
第10章介绍MySQL中的存储过程和函数,包括存储过程和函数的创建、调用、查看、修改和删除。
第11章介绍MySQL视图,主要介绍视图的概念、创建视图、查看视图、修改视图、更新视图和删除视图。
第12章介绍MySQL触发器,包括创建触发器、查看触发器、触发器的使用和删除触发器。
第13章介绍MySQL用户管理,主要包括MySQL中的各种权限表、账户管理、权限管理和MySQL的访问控制机制。
第14章介绍MySQL数据库的备份和恢复,主要包括数据备份、数据恢复、数据库的迁移和数据表的导出和导入。
第15章介绍MySQL日志,主要包括日志简介、二进制日志、错误日志、通用查询日志和慢查询日志。
第16章介绍如何对MySQL进行性能优化,包括优化简介、优化查询、优化数据库结构和优化MySQL服务器。
第17章介绍MySQL Replication复制数据的操作方法和技巧。
第18章介绍MySQL Workbench设计MySQL数据库的方法和技巧。
第19章介绍MySQL Utilities 管理MySQL数据库的方法和技巧。
第20章介绍MySQL Proxy操作MySQL数据库的方法和技巧。
第21章介绍PHP操作MySQL数据库的方法和技巧。
第22章介绍MySQL存储引擎的工作原理。
第23章介绍PHP操作MySQL数据库的方法和技巧。
第24章介绍PDO数据库抽象类库的使用方法和技巧。
第25章介绍开发网上商场的方法和实现过程。
第26章介绍论坛系统数据库的设计方法和实现过程。
第27章介绍新闻发布系统数据库的设计方法和实现过程。
本书特色
内容全面:涵盖了所有MySQL的基础知识点,由浅入深地掌握MySQL数据库开发技术。
图文并茂:在介绍案例的过程中,每一个操作均有对应步骤和过程说明。这种图文结合的方式使读者在学习过程中能够直观、清晰地看到操作的过程以及效果,便于读者更快地理解和掌握。
易学易用:颠覆传统看书的观念,变成一本能操作的图书。
案例丰富:把知识点融汇于系统的案例实训当中,并且结合综合案例进行讲解和拓展,进而达到知其然,并知其所以然的效果。
提示说明:本书对读者在学习过程中可能会遇到的疑难问题以提示的形式进行说明,以免读者在学习的过程中走弯路。
超值资源:本书共有480个详细实例和16个综合案例源代码,能让读者在实战应用中掌握MySQL的每一项技能。下载包中赠送近20小时培训班形式的视频教学录像,使本书真正体现自学无忧,令其物超所值。
课件、源码、教学视频下载
本书课件、源码、教学视频下载地址可以扫描右侧的二维码获得。
如果下载有问题,请电子邮件联系booksaga@163.com,邮件主题为MySQL8从入门到精通。
也可加入本书技术支持QQ群(790586917)获取。
读者对象
本书是一本完整介绍MySQL数据库技术的教程,内容丰富、条理清晰、实用性强,适合以下读者学习使用:
? MySQL数据库初学者。
? 对数据库开发有兴趣,希望快速、全面掌握MySQL的人员。
? 对其他数据库有一定的了解,想转到MySQL平台上的开发者。
? 高等院校和培训学校相关专业的师生。
鸣谢与技术支持
本书由王英英著,同时李小威、刘增产、王秀荣、王天护、张工厂、刘增杰、刘玉萍、胡同夫、皮素芹、王猛、王攀登、王婷婷、王朵朵、李小威、王维维、张芳、刘玉红等人也参与了写作工作。虽然倾注了众多人员的努力,但由于水平有限,书中难免有疏漏之处。如果遇到问题或有意见和建议,敬请与我们联系,我们将全力提供帮助。
著 者
2019年5月
|
|