目录
第1章数据库入门1
1.1数据库基础知识1
1.1.1数据库概述1
1.1.2数据库技术的发展2
1.1.3三级模式和二级映像3
1.1.4数据模型6
1.1.5关系运算10
1.1.6SQL语言12
1.1.7常见的数据库产品14
1.2MySQL安装与配置15
1.2.1获取MySQL15
1.2.2安装MySQL17
1.2.3配置MySQL19
1.2.4管理MySQL服务19
1.2.5用户登录与设置密码21
1.2.6MySQL客户端的相关命令22
1.3常用图形化工具24
1.3.1SQLyog24
1.3.2Navicat26
1.4本章小结27
1.5课后练习27
第2章数据库基本操作29
2.1数据库操作29
2.1.1创建数据库29
2.1.2查看数据库30
2.1.3选择数据库31
2.1.4删除数据库32
2.2数据表操作33
2.2.1创建数据表34目录MySQL数据库原理、设计与应用
2.2.2查看数据表35
2.2.3修改数据表37
2.2.4查看表结构38
2.2.5修改表结构40
2.2.6删除数据表43
2.3数据操作44
2.3.1添加数据44
2.3.2查询数据46
2.3.3修改数据48
2.3.4删除数据48
2.4动手实践: 电子杂志订阅表的操作49
2.5本章小结51
2.6课后练习52
第3章数据类型与约束54
3.1数据类型54
3.1.1数字类型54
3.1.2时间和日期类型60
3.1.3字符串类型63
3.2表的约束68
3.2.1默认约束69
3.2.2非空约束70
3.2.3唯一约束71
3.2.4主键约束74
3.3自动增长76
3.4字符集与校对集78
3.4.1字符集与校对集概述78
3.4.2字符集与校对集的设置80
3.5动手实践: 设计用户表82
3.6本章小结84
3.7课后练习84
第4章数据库设计86
4.1数据库设计概述86
4.2数据库设计范式87
4.3数据建模工具91
4.4数据库设计——电子商务网站93
4.4.1需求分析93
4.4.2准备工作95
4.4.3商品分类表96
4.4.4商品表97
4.4.5商品规格表100
4.4.6商品属性表103
4.4.7用户表106
4.4.8评论表108
4.5动手实践: 商品购物流程设计109
4.6本章小结114
4.7课后练习114
第5章单表操作116
5.1数据操作116
5.1.1复制表结构和数据116
5.1.2解决主键冲突118
5.1.3清空数据119
5.1.4去除重复记录121
5.2排序与限量122
5.2.1排序122
5.2.2限量124
5.3分组与聚合函数126
5.3.1分组126
5.3.2聚合函数132
5.4运算符133
5.4.1算术运算符133
5.4.2比较运算符139
5.4.3逻辑运算符144
5.4.4赋值运算符146
5.4.5位运算符147
5.4.6运算符优先级149
5.5动手实践: 商品评论表的操作150
5.6本章小结153
5.7课后练习153
第6章多表操作155
6.1多表查询155
6.1.1联合查询155
6.1.2连接查询157
6.2子查询162
6.2.1什么是子查询162
6.2.2子查询分类162
6.2.3子查询关键字165
6.3外键约束168
6.3.1添加外键约束168
6.3.2关联表操作170
6.3.3删除外键约束172
6.4动手实践: 多表查询练习174
6.5本章小结176
6.6课后练习176
第7章用户与权限178
7.1用户与权限概述178
7.2用户管理182
7.2.1创建用户182
7.2.2设置密码186
7.2.3修改用户188
7.2.4删除用户190
7.3权限管理190
7.3.1授予权限190
7.3.2回收权限195
7.3.3刷新权限196
7.4动手实践: 用户与权限练习196
7.5本章小结198
7.6课后练习198
第8章视图200
8.1初识视图200
8.1.1视图的概念和使用200
8.1.2创建视图的语法格式202
8.2视图管理203
8.2.1创建视图203
8.2.2查看视图205
8.2.3修改视图206
8.2.4删除视图207
8.3视图数据操作208
8.3.1添加数据208
8.3.2修改数据209
8.3.3删除数据209
8.3.4视图检查条件209
8.4动手实践: 视图的应用210
8.5本章小结212
8.6课后练习212
第9章事务214
9.1事务处理214
9.1.1事务的概念214
9.1.2事务的基本操作215
9.1.3事务的保存点217
9.2事务隔离级别219
9.2.1查看隔离级别219
9.2.2修改隔离级别220
9.2.3MySQL的4种隔离级别221
9.3动手实践: 事务的应用227
9.4本章小结228
9.5课后练习228
第10章数据库编程230
10.1函数230
10.1.1内置函数230
10.1.2自定义函数247
10.2存储过程250
10.2.1存储过程的概念250
10.2.2存储过程的创建与执行250
10.2.3存储过程的修改与删除252
10.2.4存储过程的错误处理254
10.3变量256
10.3.1系统变量256
10.3.2会话变量258
10.3.3局部变量259
10.4流程控制260
10.4.1判断语句260
10.4.2循环语句264
10.4.3跳转语句267
10.5游标268
10.5.1游标的作用268
10.5.2游标的操作流程268
10.5.3使用游标检索数据269
10.6触发器271
10.6.1触发器的概述271
10.6.2触发器的基本操作271
10.7事件275
10.7.1事件的概述275
10.7.2事件的基本操作275
10.8预处理SQL语句279
10.9动手实践: 数据库编程实战281
10.10本章小结283
10.11课后练习283
第11章数据库优化285
11.1存储引擎285
11.1.1什么是存储引擎285
11.1.2存储引擎的选择285
11.1.3InnoDB存储引擎287
11.1.4MyISAM存储引擎289
11.2索引290
11.2.1索引概述290
11.2.2索引的基本操作291
11.2.3索引的使用原则297
11.3锁机制299
11.3.1认识锁机制299
11.3.2表级锁300
11.3.3行级锁303
11.4分表技术307
11.5分区技术308
11.5.1分区概述308
11.5.2分区管理309
11.6数据碎片与维护313
11.7动手实践: 数据库优化实战315
11.8本章小结321
11.9课后练习322
第12章数据库配置与部署324
12.1Linux环境安装MySQL324
12.1.1Linux环境搭建324
12.1.2用yum安装MySQL327
12.1.3编译安装MySQL331
12.2MySQL配置文件336
12.2.1配置区段336
12.2.2基本配置336
12.2.3内存和优化配置337
12.2.4日志配置338
12.3数据备份与还原339
12.3.1数据备份339
12.3.2数据还原341
12.3.3二进制日志342
12.4多实例部署345
12.5主从复制347
12.6动手实践: 组复制350
12.7本章小结355
12.8课后练习355