第1篇MySQL数据库基础篇 2
第1章 数据库概述 2
1.1关于数据库的基本概念 2
1.1.1数据管理技术的发展阶段 2
1.1.2数据库系统阶段涉及的概念 3
1.1.3数据库技术经历的阶段 3
1.1.4数据库管理系统提供的功能 4
1.1.5什么是SQL 4
1.2 MySQL数据库管理系统 5
1.2.1 MySQL概述 5
1.2.2常见数据库管理系统 6
1.2.3为什么要使用MySQL数据库 6
1.3小结 7
第2章MySQL安装和配置 8
2.1下载和安装MySQL软件 8
2.1.1基于客户端——服务器(C/S)的数据库管理系统 8
2.1.2 MySQL的各种版本 9
2.1.3下载MySQL软件 9
2.1.4安装MySQL软件 11
2.1.5图形化配置数据库服务器MySQL 13
2.1.6手工配置数据库服务器MySQL 16
2.1.7卸载MySQL软件 19
2.2关于MySQL软件的常用操作 20
2.2.1通过图形界面启动和关闭MySQL服务 20
2.2.2通过DOS窗口启动和关闭MYSQL服务 22
2.3 MySQL官方客户端软件 23
2.3.1命令行客户端软件——MySQL Command Line Client 24
2.3.2通过DOS窗口连接MySQL软件 25
2.3.3下载MySQL-Workbench客户端软件 27
2.3.4安装MySQL-Workbench客户端软件 28
2.3.5使用MySQL-Workbench客户端软件 29
2.4 MySQL常用图形化管理软件——SQLyog软件 31
2.4.1下载SQLyog软件 31
2.4.2安装SQLyog客户端软件 32
2.4.3通过SQLyog客户端软件登录MySQL软件 34
2.5使用免安装的MySQL软件 34
2.6小结 36
第2篇MySQL数据库操作和应用篇 38
第3章MySQL数据库基本操作 38
3.1数据库和数据库对象 38
3.2数据库相关操作——创建数据库 39
3.2.1创建数据库的语法形式 39
3.2.2通过工具来创建数据库 40
3.3数据库相关操作——查看和选择数据库 42
3.3.1查看数据库 42
3.3.2选择数据库 43
3.4数据库相关操作——删除数据库 44
3.4.1删除数据库的语法形式 44
3.4.2通过工具来删除数据库 45
3.5小结 47
第4章MySQL数据库中存储引擎和数据类型 48
4.1认识存储引擎 48
4.1.1 MySQL 5.5所支持的存储引擎 48
4.1.2操作默认存储引擎 51
4.1.3选择存储引擎 53
4.2数据类型 54
4.2.1整数类型 54
4.2.2浮点数类型、定点数类型和位类型 55
4.2.3日期和时间类型 56
4.2.4字符串类型 57
4.3小结 58
第5章 表的操作 59
5.1表的基本概念 59
5.2创建表 60
5.2.1创建表的语法形式 60
5.2.2通过SQLyog客户端软件来创建表 61
5.3查看表结构 63
5.3.1 DESCRIBE语句查看表定义 63
5.3.2 SHOW CREATE TABLE语句查看表详细定义 64
5.3.3通过SQLyog软件来查看表信息 64
5.4删除表 65
5.4.1删除表的语法形式 66
5.4.2通过SQLyog软件删除表 66
5.5修改表 67
5.5.1修改表名 67
5.5.2增加字段 68
5.5.3删除字段 72
5.5.4修改字段 73
5.6通过SQLyog客户端软件修改表 77
5.6.1修改表名 78
5.6.2增加字段 78
5.6.3删除字段 81
5.6.4修改字段 83
5.7操作表的约束 87
5.7.1 MySQL支持的完整性约束 87
5.7.2设置非空约束(NOT NULL, NK) 88
5.7.3设置字段的默认值(DEFAULT) 89
5.7.4设置唯一约束(UNIQUE, UK) 90
5.7.5设置主键约束(PRIMARY KEY, PK) 91
5.7.6设置字段值自动增加(AUTO_ INCREMENT) 94
5.7.7设置外键约束(FOREIGN KEY, FK) 96
5.8小结 98
第6章 索引的操作 99
6.1为什么使用索引 99
6.2创建和查看索引 100
6.2.1创建和查看普通索引 100
6.2.2创建和查看唯一索引 104
6.2.3创建和查看全文索引 108
6.2.4创建和查看多列索引 112
6.2.5通过SQLyog客户端软件来创建索引 115
6.3删除索引 119
6.3.1删除索引的语法形式 119
6.3.2通过SQLyog软件删除索引 121
6.4小结 122
第7章 视图的操作 123
7.1为什么使用视图 123
7.2创建视图 124
7.2.1创建视图的语法形式 124
7.2.2通过SQLyog软件创建视图 125
7.2.3创建各种视图 126
7.3查看视图 130
7.3.1 SHOW TABLES语句查看视图名 130
7.3.2 SHOW TABLE STATUS语句查看视图详细信息 130
7.3.3 SHOW CREATE VIEW语句查看视图定义信息 132
7.3.4 DESCRIBE I DESC语句查看视图设计信息 133
7.3.5通过系统表查看视图信息 133
7.3.6 SQLyog查看视图信息 134
7.4删除视图 136
7.4.1删除视图的语法形式 136
7.4.2通过SQLyog软件删除视图 137
7.5修改视图 138
7.5.1 CREATE OR REPLACE VIEW语句修改视图 138
7.5.2 ALTER语句修改视图 140
7.5.3通过SQLyog软件修改视图 141
7.6利用视图操作基本表 143
7.6.1检索(查询)数据 143
7.6.2利用视图操作基本表数据 144
7.7小结 145
第8章 触发器的操作 146
8.1为什么使用触发器 146
8.2创建触发器 147
8.2.1创建有一条执行语句的触发器 147
8.2.2创建包含多条执行语句的触发器 149
8.2.3通过SQLyog客户端软件来创建触发器 151
8.3查看触发器 152
8.3.1通过SHOW TRIGGERS语句查看触发器 152
8.3.2通过查看系统表triggers实现查看触发器 154
8.3.3通过SQLyog客户端软件来查看触发器 156
8.4删除触发器 157
8.4.1通过DROP TRIGGER语句删除触发器 157
8.4.2通过工具来删除触发器 158
8.5小结 159
第9章 数据的操作 160
9.1插入数据记录 160
9.1.1插入完整数据记录 160
9.1.2插入数据记录一部分 162
9.1.3插入多条数据记录 165
9.1.4插入查询结果 168
9.1.5通过工具来插入数据记录 170
9.2更新数据记录 172
9.2.1更新特定数据记录 173
9.2.2更新所有数据记录 174
9.2.3通过工具来更新数据记录 176
9.3删除数据记录 178
9.3.1删除特定数据记录 178
9.3.2删除所有数据记录 179
9.2.3通过工具来删除数据记录 181
9.4小结 183
第10章 单表查询数据记录 184
10.1简单数据记录查询 184
10.1.1简单数据查询 185
10.1.2避免重复数据查询——DISTINCT 188
10.1.3实现数学四则运算数据查询 190
10.1.4设置显示格式数据查询 191
10.2条件数据记录查询 192
10.2.1带有关系运算符和逻辑运算符的条件数据查询 193
10.2.2带BETWEEN AND关键字的范围查询 195
10.2.3带IS NULL关键字的空值查询 197
10.2.4带IN关键字的集合查询 198
10.2.5带LIKE关键字的模糊查询 201
10.3排序数据记录查询 207
10.3.1按照单字段排序 207
10.3.2按照多字段排序 209
10.4限制数据记录查询数量 211
10.4.1不指定初始位置 211
10.4.2指定初始位置 213
10.5统计函数和分组数据记录查询 215
10.5.1 MySQL支持的统计函数 216
10.5.2关于统计函数注意点 221
10.5.3分组数据查询——简单分组查询 222
10.5.4分组数据查询——实现统计功能分组查询 224
10.5.5分组数据查询——实现多个字段分组查询 225
10.5.6分组数据查询——实现HAVING子句限定分组查询 228
10.6 小结 229
第11章 多表数据记录查询 231
11.1关系数据操作 231
11.1.1并(UNION) 231
11.1.2笛卡儿积(CARTESIAN PRODUCT) 232
11.1.3内连接(INNER JOIN) 233
11.1.4外连接(OUTER JOIN) 235
11.2内连接查询 237
11.2.1自连接 238
11.2.2等值连接 240
11.2.3不等连接 244
11.3外连接查询 246
11.3.1左外连接 247
11.3.2右外连接 248
11.4合并查询数据记录 250
11.5子查询 252
11.5.1为什么使用子查询 253
11.5.2返回结果为单行单列和单行多列子查询 253
11.5.3返回结果为多行单列子查询 256
11.5.4返回结果为多行多列子查询 262
11.6小结 264
第12章 使用MySQL运算符 265
12.1为什么要使用运算符 265
12.2使用算术运算符 265
12.3使用比较运算符 267
12.3.1常用比较运算符 268
12.3.2实现特殊功能比较运算符 270
12.4使用逻辑运算符 274
12.5使用位运算符 277
12.6小结 280
第13章 使用MySQL常用函数 281
13.1使用字符串函数 281
13.1.1合并字符串函数CONCAT()和CONCAT_ WS() 282
13.1.2比较字符串大小函数STRCMP() 284
13.1.3获取字符串长度函数LENGTH()和字符数函数CHAR LENGTH() 284
13.1.4实现字母大小写转换函数UPPER()和字符数函数LOWER() 286
13.1.5查找字符串 287
13.1.6从现有字符串中截取子字符串 290
13.1.7去除字符串的首尾空格 291
13.1.8替换字符串 293
13.2使用数值函数 295
13.2.1获取随机数 295
13.2.2获取整数的函数 296
13.2.3截取数值函数 297
13.2.4四舍五入函数 297
13.3使用日期和时间函数 298
13.3.1获取当前日期和时间的函数 298
13.3.2通过各种方式显示日期和时间 300
13.3.3获取日期和时间各部分值 302
13.3.4计算日期和时间的函数 305
13.4使用系统信息函数 308
13.4.1获取MySQL系统信息 309
13.4.2获取AUTO INCREMENT约束的最后ID值 309
13.4.3其他函数 310
13.5小结 311
第14章 存储过程和函数的操作 312
14.1为什么使用存储过程和函数 312
14.2创建储存过程和函数 313
14.2.1创建储存过程语法形式 313
14.2.2创建函数语法形式 314
14.2.3创建简单的储存过程和函数 315
14.2.4通过工具来创建存储过程和函数 316
14.3关于存储过程和函数的表达式 320
14.3.1操作变量 320
14.3.2操作条件 321
14.3.3使用光标 322
14.3.4使用流程控制 323
14.4查看储存过程和函数 324
14.4.1通过SHOW PROCEDURE STATUS语句查看储存过程状态信息 324
14.4.2通过SHOW FUNCTION STATUS语句查看函数状态信息 325
14.4.3通过查看系统表information_schema.routines实现查看储存过程和函数的信息 326
14.4.4通过SHOW CREATE PROCEDURE语句查看储存过程定义信息 330
14.4.5通过SHOW CREATE FUNCTION语句查看函数定义信息 331
14.4.6通过工具来查看储存过程和函数 332
14.5修改存储过程和函数 334
14.5.1修改存储过程 334
14.5.2修改函数 335
14.6 删除储存过程和函数 336
14.6.1通过DROP语句删除储存过程 336
14.6.2通过DROP FUNCTION语句删除函数 337
14.6.3通过工具来删除储存过程和函数 337
14.7小结 340
第3篇MySQL数据库管理篇 342
第15章MySQL安全性机制 342
15.1 MySQL软件所提供的权限 342
15.1.1系统表mysql.user 342
15.1.2系统表mysql.db和mysql.host 344
15.1.3其他权限表 345
15.2 MySQL软件所提供的用户机制 348
15.2.1登录和退出MySQL软件的完整命令 349
15.2.2创建普通用户账户 351
15.2.3利用拥有超级权限用户root修改用户账户密码 354
15.2.4利用拥有超级权限用户root修改普通用户账户密码 358
15.2.5删除普通用户账户 364
15.3权限管理 366
15.3.1对用户进行授权 366
15.3.2查看用户所拥有权限 369
15.3.3收回用户所拥有权限 370
15.4小结 373
第16章MySQL日志管理 374
16.1 MySQL软件所支持的日志 374
16.2操作二进制日志 375
16.2.1启动二进制日志 375
16.2.2查看二进制日志 376
16.2.3停止二进制日志 378
16.2.4删除二进制日志 378
16.3操作错误日志 380
16.3.1启动错误日志 380
16.3.2查看错误日志 381
16.3.3删除错误日志 381
16.4操作查询日志 381
16.4.1启动查询日志 382
16.4.2查看查询日志 382
16.4.3删除查询日志 383
16.5小结 383
第17章MySQL数据库维护和性能提高 384
17.1 MySQL数据库维护 384
17.1.1通过复制数据文件实现数据备份 384
17.1.2通过命令mysqldump实现数据备份 385
17.1.3通过复制数据文件实现数据还原 390
17.1.4通过命令mysql实现数据还原 390
17.1.5实现数据库中表导出成文本文件 393
17.1.6实现文本文件导入到数据库表 397
17.1.7数据库迁移 400
17.2通过SQLyog客户端软件实现数据库维护 402
17.2.1通过SQLyog客户端软件进行备份操作 402
17.2.2通过SQLyog客户端软件进行还原操作 405
17.2.3通过SQLyog客户端软件进行导出操作 406
17.2.4通过SQLyog客户端软件进行导入操作 408
17.3 MySQL数据库性能优化 409
17.4小结 410
第18章 使用PowerDesigner进行数据库设计 411
18.1下载和安装PowerDesigner软件 411
18.1.1下载PowerDesigner软件 411
18.1.2安装PowerDesigner软件 413
18.2使用PowerDesigner软件进行数据库设计 415
18.2.1利用PowerDesigner软件设计概念数据模型 415
18.2.2利用PowerDesigner软件设计物理数据模型 424
18.2.3利用PowerDesigner软件创建数据库脚本 425
18.3小结 428