第1章 数据库概述
1.1 关于数据库的基本概念 1
1.1.1 数据管理技术的发展阶段 1
1.1.2 数据库系统阶段涉及到概念 2
1.1.3 数据库技术经历的阶段 2
1.1.4 数据库管理系统提供的功能 3
1.1.5 什么是SQL 3
1.2 MySQL数据库管理系统 4
1.2.1 MySQL概述 4
1.2.2 常见数据库管理系统 5
1.2.3 为什么要使用MySQL数据库 5
1.3 小结 6
第2章 MySQL安装和配置
2.1 下载和安装MySQL软件 7
2.1.1 基于客户端—服务器(C/S)的数据库管理系统 7
2.1.2 MySQL的各种版本 8
2.1.3 下载MySQL软件 8
2.1.4 安装MySOL软件 10
2.1.5 图形化配置数据库服务器MySOL 12
2.1.6 手工配置数据库服务器MySOL 15
2.1.7 卸载MySOL软件 18
2.2 关于MySQL软件的常用操作 19
2.2.1 通过图形界面启动和关闭MySQL服务 19
2.2.2 通过DOS窗口启动和关闭MySQL服务 21
2.3 MySQL官方客户端软件 22
2.3.1 命令行客户端软件——MySQL Command Line Client 23
2.3.2 通过DOS窗口连接MySQL软件 24
2.3.3 下载MySQL-Workbench客户端软件 26
2.3.4 安装MySQL-Workbench客户端软件 27
2.3.5 使用MySQL-Workbench客户端软件 28
2.4 MySQL常用图形化管理软件——SQLyog软件 30
2.4.1 下载SQLyog软件 30
2.4.2 安装SQLyog客户端软件 31
2.4.3 通过SQLyog客户端软件登录MySQL软件 33
2.5 使用免安装的MySQL软件 33
2.6 小结 35
第3章 操作MySQL数据库
3.1 数据库和数据库对象 36
3.2 数据库相关操作——创建数据库 37
3.2.1 创建数据库的语法形式 37
3.2.2 通过工具来创建数据库 38
3.3 数据库相关操作——查看和选择数据库 40
3.3.1 查看数据库 40
3.3.2 选择数据库 41
3.4 数据库相关操作——删除数据库 42
3.4.1 删除数据库的语法形式 42
3.4.2 通过工具来删除数据库 43
3.5 小结 45
第4章 MySQL数据库中存储引擎和数据类型
4.1 认识存储引擎 46
4.1.1 MySQL 5.5所支持的存储引擎 46
4.1.2 操作默认存储引擎 49
4.1.3 选择存储引擎 51
4.2 数据类型 52
4.2.1 整数类型 52
4.2.2 浮点数类型、定点数类型和位类型 53
4.2.3 日期和时间类型 54
4.2.4 字符串类型 55
4.3 小结 56
第5章 操作表
5.1 表的基本概念 57
5.2 创建表 58
5.2.1 创建表的语法形式 58
5.2.2 通过SQLyog客户端软件来创建表 59
5.3 查看表结构 61
5.3.1 DESCRIBE语句查看表定义 61
5.3.2 SHOW CREATE TABLE语句查看表详细定义 62
5.3.3 通过SQLyog软件来查看表信息 62
5.4 删除表 63
5.4.1 删除表的语法形式 64
5.4.2 通过SQLyog软件删除表 64
5.5 修改表 65
5.5.1 修改表名 65
5.5.2 增加字段 66
5.5.3 删除字段 70
5.5.4 修改字段 71
5.6 通过SQLyog客户端软件修改表 75
5.6.1 修改表名 76
5.6.2 增加字段 76
5.6.3 删除字段 79
5.6.4 修改字段 81
5.7 操作表的约束 85
5.7.1 MySQL支持的完整性约束 85
5.7.2 设置非空约束(NOT NULL,NK) 86
5.7.3 设置字段的默认值(DEFAULT) 87
5.7.4 设置唯一约束(UNIQUE,UK) 88
5.7.5 设置主键约束(PRIMARY KEY,PK) 89
5.7.6 设置字段值自动增加(AUTO_INCREMENT) 92
5.7.7 设置外键约束(FOREIGN KEY,FK) 94
5.8 小结 96
第6章 操作索引
6.1 为什么使用索引 97
6.2 创建和查看索引 98
6.2.1 创建和查看普通索引 98
6.2.2 创建和查看唯一索引 102
6.2.3 创建和查看全文索引 106
6.2.4 创建和查看多列索引 110
6.2.5 通过SQLyog客户端软件来创建索引 113
6.3 删除索引 117
6.3.1 删除索引的语法形式 117
6.3.2 通过SQLyog软件删除索引 119
6.4 小结 120
第7章 操作视图
7.1 为什么使用视图 121
7.2 创建视图 122
7.2.1 创建视图的语法形式 122
7.2.2 通过SQLyog软件创建视图 123
7.2.3 创建各种视图 124
7.3 查看视图 128
7.3.1 SHOW TABLES语句查看视图名 128
7.3.2 SHOW TABLE STATUS语句查看视图详细信息 128
7.3.3 SHOW CREATE VIEW语句查看视图定义信息 130
7.3.4 DESCRIBE|DESC语句查看视图设计信息 131
7.3.5 通过系统表查看视图信息 131
7.3.6 SQLyog查看视图信息 132
7.4 删除视图 134
7.4.1 删除视图的语法形式 134
7.4.2 通过SQLyog软件删除视图 135
7.5 修改视图 136
7.5.1 CREATE OR REPLACE VIEW语句修改视图 136
7.5.2 ALTER语句修改视图 138
7.5.3 通过SQLyog软件修改视图 139
7.6 利用视图操作基本表 141
7.6.1 检索(查询)数据 141
7.6.2 利用视图操作基本表数据 142
7.7 小结 143
第8章 操作触发器
8.1 为什么使用触发器 144
8.2 创建触发器 145
8.2.1 创建有一条执行语句的触发器 145
8.2.2 创建包含多条执行语句的触发器 147
4.2.2 通过SQLyog客户端软件来创建触发器 149
8.3 查看触发器 150
8.3.1 通过SHOW TRIGGERS语句查看触发器 150
8.3.2 通过查看系统表triggers实现查看触发器 152
8.3.3 通过SQLyog客户端软件来查看触发器 154
8.4 删除触发器 155
8.4.1 通过DROP TRIGGER语句删除触发器 155
8.4.2 通过工具来删除触发器 156
8.5 小结 157
第9章 操作数据
9.1 插入数据记录 158
9.1.1 插入完整数据记录 158
9.2.2 插入数据记录一部分 160
9.2.3 插入多条数据记录 163
9.1.4 插入查询结果 166
9.1.5 通过工具来插入数据记录 168
9.2 更新数据记录 170
9.2.1 更新特定数据记录 171
9.2.2 更新所有数据记录 172
9.2.3 通过工具来更新数据记录 174
9.3 删除数据记录 176
9.3.1 删除特定数据记录 176
9.3.2 删除所有数据记录 177
9.2.3 通过工具来删除数据记录 179
9.4 小结 181
第10章 单表查询数据记录
10.1 简单数据记录查询 182
10.1.1 简单数据查询 183
10.1.2 避免重复数据查询——DISTINCT 186
10.1.3 实现数学四则运算数据查询 188
10.1.4 设置显示格式数据查询 189
10.2 条件数据记录查询 190
10.2.1 带有关系运算符和逻辑运算符的条件数据查询 191
10.2.2 带BETWEEN AND关键字的范围查询 193
10.2.3 带IS NULL关键字的空值查询 195
10.2.4 带IN关键字的集合查询 196
10.2.5 带LIKE关键字的模糊查询 199
10.3 排序数据记录查询 205
10.3.1 按照单字段排序 205
10.3.2 按照多字段排序 207
10.4 限制数据记录查询数量 209
10.4.1 不指定初始位置 209
10.4.2 指定初始位置 211
10.5 统计函数和分组数据记录查询 213
10.5.1 MySQL支持的统计函数 214
10.5.2 关于统计函数注意点 219
10.5.3 分组数据查询——简单分组查询 220
10.5.4 分组数据查询——实现统计功能分组查询 222
10.5.5 分组数据查询——实现多个字段分组查询 223
10.5.6 分组数据查询——实现HAVING子句限定分组查询 226
10.6 小结 227
第11章 多表数据记录查询
11.1 关系数据操作 229
11.1.1 并(UNION) 229
11.1.2 笛卡尔积(CARTESIAN PRODUCT) 230
11.1.3 内连接(INNER JOIN) 231
11.1.4 外连接(OUTER JOIN) 233
11.2 内连接查询 235
11.2.1 自连接 236
11.2.2 等值连接 238
11.2.3 不等连接 242
11.3 外连接查询 244
11.3.1 左外连接 245
11.3.2 右外连接 246
11.4 合并查询数据记录 248
11.5 子查询 250
11.5.1 为什么使用子查询 251
11.5.2 返回结果为单行单列和单行多列子查询 251
11.5.3 返回结果为多行单列子查询 254
11.5.4 返回结果为多行多列子查询 260
11.6 小结 262
第12章 使用MySQL运算符
12.1 为什么要使用运算符 263
12.2 使用算术运算符 263
12.3 使用比较运算符 265
12.3.1 常用比较运算符 266
12.3.2 实现特殊功能比较运算符 268
12.4 使用逻辑运算符 272
12.5 使用位运算符 275
12.6 小结 278
第13章 使用MySQL常用函数
13.1 使用字符串函数 279
13.1.1 合并字符串函数CONCAT()和CONCAT_WS() 280
13.1.2 比较字符串大小函数STRCMP() 282
13.1.3 获取字符串长度函数LENGTH()和字符数函数CHAR_LENGTH() 282
13.1.4 实现字母大小写转换函数UPPER()和字符数函数LOWER() 284
13.1.5 查找字符串 285
13.1.6 从现有字符串中截取子字符串 288
13.1.7 去除字符串的首尾空格 289
13.1.8 替换字符串 291
13.2 使用数值函数 293
13.2.1 获取随机数 293
13.2.2 获取整数的函数 294
13.2.3 截取数值函数 295
13.2.4 四舍五入函数 295
13.3 使用日期和时间函数 296
13.3.1 获取当前日期和时间的函数 296
13.3.2 通过各种方式显示日期和时间 298
13.3.3 获取日期和时间各部分值 300
13.3.4 计算日期和时间的函数 303
13.4 使用系统信息函数 306
13.4.1 获取MySQL系统信息 307
13.4.2 获取AUTO_INCREMENT约束的最后ID值 307
13.4.3 其他函数 308
13.5 小结 309
第14章 操作存储过程和函数
14.1 为什么使用存储过程和函数 310
14.2 创建储存过程和函数 311
14.2.1 创建储存过程语法形式 311
14.2.2 创建函数语法形式 312
14.2.3 创建简单的储存过程和函数 313
14.2.4 通过工具来创建存储过程和函数 314
14.3 关于存储过程和函数的表达式 318
14.3.1 操作变量 318
14.3.2 操作条件 319
14.3.3 使用光标 320
14.3.4 使用流程控制 321
14.4 查看储存过程和函数 322
14.4.1 通过SHOW PROCEDURE STATUS语句查看储存过程状态信息 322
14.4.2 通过SHOW FUNCTION STATUS语句查看函数状态信息 323
14.4.3 通过查看系统表information_schema.routines实现查看储存过程和 函数的信息
324
14.4.4 通过SHOW CREATE PROCEDURE语句查看储存过程定义信息 328
14.4.5 通过SHOW CREATE FUNCTION语句查看函数定义信息 329
14.4.6 通过工具来查看储存过程和函数 330
14.5 修改存储过程和函数 332
14.5.1 修改存储过程 332
14.5.2 修改函数 333
14.6 删除储存过程和函数 334
14.6.1 通过DROP语句删除储存过程 334
14.6.2 通过DROP FUNCTION语句删除函数 335
14.6.3 通过工具来删除储存过程和函数 335
14.7 小结 338
第15章 MySQL安全性机制
15.1 MySQL软件所提供的权限 339
15.1.1 系统表mysql.user 339
15.1.2 系统表mysql.db和mysql.host 341
15.1.3 其他权限表 342
15.2 MySQL软件所提供的用户机制 345
15.2.1 登录和退出MySQL软件的完整命令 346
15.2.2 创建普通用户账户 348
15.2.3 利用拥有超级权限用户root修改用户账户密码 351
15.2.4 利用拥有超级权限用户root修改普通用户账户密码 355
15.2.5 删除普通用户账户 361
15.3 权限管理 363
15.3.1 对用户进行授权 363
15.3.2 查看用户所拥有权限 366
15.3.3 收回用户所拥有权限 367
15.4 小结 370
第16章 MySQL日志管理
16.1 MySQL软件所支持的日志 371
16.2 操作二进制日志 372
16.2.1 启动二进制日志 372
16.2.2 查看二进制日志 373
16.2.3 停止二进制日志 375
16.2.4 删除二进制日志 375
16.3 操作错误日志 377
16.3.1 启动错误日志 377
16.3.2 查看错误日志 378
16.3.3 删除错误日志 378
16.4 操作查询日志 378
16.4.1 启动查询日志 379
16.4.2 查看查询日志 379
16.4.3 删除查询日志 380
16.5 小结 380
第17章 MySQL数据库维护和性能提高
17.1 MySQL数据库维护 381
17.1.1 通过复制数据文件实现数据备份 381
17.1.2 通过命令mysqldump实现数据备份 382
17.1.3 通过复制数据文件实现数据还原 387
17.1.4 通过命令mysql实现数据还原 387
17.1.5 实现数据库中表导出成文本文件 390
17.1.6 实现文本文件导入到数据库表 394
17.1.7 数据库迁移 397
17.2 通过SQLyog客户端软件实现数据库维护 399
17.2.1 通过SQLyog客户端软件进行备份操作 399
17.2.2 通过SQLyog客户端软件进行还原操作 402
17.2.3 通过SQLyog客户端软件进行导出操作 403
17.2.4 通过SQLyog客户端软件进行导入操作 405
17.3 MySQL数据库性能优化 406
17.4 小结 407
第18章 使用PowerDesigner进行数据库设计
18.1 下载和安装PowerDesigner软件 408
18.1.1 下载PowerDesigner软件 408
18.1.2 安装PowerDesiger软件 410
18.2 使用PowerDesigner软件进行数据库设计 412
18.2.1 利用PowerDesigner软件设计概念数据模型 412
18.2.2 利用PowerDesigner软件设计物理数据模型 421
18.2.3 利用PowerDesigner软件创建数据库脚本 422
18.3 小结 425