首页 > 图书中心 > MySQL数据库原理与应用(微课版)

目录

目    录 

 

第1章  数据库基础 1

1.1  数据库概述 1

1.1.1  数据库技术的发展 1

1.1.2  数据库系统的组成 2

1.1.3  数据模型与规范化 2

1.1.4  结构化查询语言(SQL) 7

1.2  数据库的体系结构 7

1.2.1  数据库三级模式 8

1.2.2  三级模式之间的映射 8

1.3  E-R图 9

1.3.1  实体和属性 9

1.3.2  关系 10

1.3.3  E-R图设计原则 10

1.4  数据库设计 11

1.4.1  为实体建立数据表 11

1.4.2  为表建立主键和外键 11

1.4.3  为多对多关系建立数据表 12

1.4.4  为字段选择合适的数据类型 12

1.4.5  定义约束条件 13

1.5  本章小结 13

1.6  思考与练习 14

第2章  初识MySQL 15

2.1  MySQL概述 15

2.1.1  MySQL的发展史 15

2.1.2  MySQL的优势 16

2.1.3  MySQL的应用环境 16

2.1.4  MySQL 8.0的新特性 17

2.2  Windows平台下安装与

配置MySQL 18

2.2.1  MySQL服务器安装包的下载 18

2.2.2  MySQL服务器的安装 20

2.3  启动服务器并登录MySQL

服务器 28

2.3.1  配置Path变量 28

2.3.2  启动和停止MySQL 30

2.3.3  连接和断开MySQL 31

2.3.4  打开MySQL 8.0 Command 

Line Client 32

2.4  Linux平台下安装和配置MySQL 32

2.4.1  下载并安装MySQL 33

2.4.2  通过apt安装MySQL服务 34

2.5  如何学好MySQL 35

2.6  本章小结 36

2.7  思考与练习 36

第3章  MySQL图形化管理工具 37

3.1  MySQL图形化管理工具概述 37

3.2  phpMyAdmin 37

3.2.1  phpMyAdmin简介 37

3.2.2  安装phpStudy 38

3.2.3  下载phpMyAdmin 38

3.2.4  打开phpMyAdmin 39

3.2.5  数据库操作管理 40

3.2.6  管理数据表 42

3.2.7  管理数据记录 44

3.2.8  导入/导出数据 48

3.2.9  设置编码格式 49

3.2.10  添加服务器用户 50

3.2.11  重置MySQL服务器登录密码 52

3.3  Navicat 53

3.3.1  下载Navicat 53

3.3.2  安装Navicat 54

3.3.3  服务器连接 56

3.3.4  创建数据库 57

3.3.5  新建数据表 58

3.3.6  添加数据记录 60

3.3.7  导出/导入数据 60

3.3.8  “工具”菜单 62

3.4  本章小结 70

3.5  思考与练习 70

第4章  数据库操作 71

4.1  关系数据库简介 71

4.1.1  关系数据库基础知识 71

4.1.2  数据库常用对象 72

4.1.3  系统数据库 72

4.2  操作数据库 73

4.2.1  创建数据库 73

4.2.2  查看数据库 76

4.2.3  选择数据库 77

4.2.4  修改数据库 77

4.2.5  删除数据库 78

4.3  存储引擎 79

4.3.1  MySQL存储引擎的概念 79

4.3.2  MySQL支持的存储引擎 80

4.3.3  InnoDB存储引擎 81

4.3.4  MyISAM存储引擎 82

4.3.5  MEMORY存储引擎 83

4.3.6  如何选择存储引擎 84

4.3.7  设置存储引擎 84

4.4  本章小结 86

4.5  思考与练习 86

第5章  数据表操作 87

5.1  数据表基本操作 87

5.1.1  创建数据表 87

5.1.2  查看表结构 89

5.1.3  复制数据表 90

5.1.4  修改表结构 92

5.1.5  重命名数据表 95

5.1.6  删除数据表 95

5.2  数据类型 96

5.2.1  数字类型 96

5.2.2  字符串类型 97

5.2.3  日期和时间类型 98

5.2.4  如何选择数据类型 98

5.3  表约束操作 100

5.3.1  设置表字段的非空约束 100

5.3.2  设置表字段的默认值 101

5.3.3  设置表字段的唯一约束 102

5.3.4  设置表字段的主键约束 103

5.3.5  设置表字段值自动增加 105

5.3.6  设置表字段的外键约束 106

5.4  索引操作 108

5.4.1  索引概述 108

5.4.2 创建索引 109

5.4.3  删除索引 111

5.5  本章实战 112

5.6  本章小结 116

5.7  思考与练习 116

第6章  数据记录操作 117

6.1  插入数据记录 117

6.1.1  使用INSERT...VALUES语句

插入单条记录 117

6.1.2  使用INSERT...VALUES语句

插入多条记录 120

6.1.3  使用INSERT...SELECT语句

插入结果集 120

6.1.4  使用REPLACE语句插入新

数据记录 122

6.2  修改数据记录 123

6.3  删除表记录 124

6.3.1  使用DELETE语句删除表记录 124

6.3.2  使用TRUNCATE语句清空表

记录 125

6.4  本章实战 125

6.5  本章小结 129

6.6  思考与练习 129

第7章  数据查询 130

7.1  基本查询 130

7.1.1  SELECT语句 130

7.1.2  查询所有字段 132

7.1.3  查询指定字段 133

7.1.4  查询指定数据 133

7.2  按条件查询 134

7.2.1  带关系运算符的查询 134

7.2.2  带IN关键字的查询 134

7.2.3  带BETWEEN AND关键字的查询 135

7.2.4  空值查询 135

7.2.5  用关键字DISTINCT去除结果中的

重复行 137

7.2.6  带LIKE关键字的查询 138

7.2.7  带AND关键字的多条件查询 138

7.2.8  带OR关键字的多条件查询 139

7.3  高级查询 140

7.3.1  对查询结果排序 140

7.3.2  分组查询 140

7.3.3  使用LIMIT限制查询结果数量 142

7.4  聚合函数查询 142

7.4.1  COUNT函数 142

7.4.2  SUM函数 143

7.4.3  AVG函数 143

7.4.4  MAX函数 144

7.4.5  MIN函数 144

7.5 连接查询 144

7.5.1  内连接查询 144

7.5.2  外连接查询 146

7.5.3  复合条件连接查询 148

7.6  子查询 149

7.6.1  带IN关键字的子查询 149

7.6.2  带比较运算符的子查询 150

7.6.3  带EXISTS关键字的子查询 150

7.6.4  带ANY关键字的子查询 151

7.6.5  带ALL关键字的子查询 152

7.7  合并查询结果 153

7.7.1  使用UNION关键字 153

7.7.2  使用UNION ALL关键字 154

7.8  定义表和字段的别名 154

7.8.1  为表取别名 154

7.8.2  为字段取别名 155

7.9  使用正则表达式查询 155

7.10  本章小结 158

7.11  思考与练习 158

第8章  MySQL函数 159

8.1  MySQL函数简介 159

8.2  数学函数 159

8.3  字符串函数 161

8.4  日期和时间函数 169

8.4.1  获取当前日期的函数和获取当前

时间的函数 169

8.4.2  获取当前日期和时间的函数 169

8.4.3  UNIX时间戳函数 170

8.4.4  返回UTC日期的函数和返回

UTC时间的函数 171

8.4.5  获取月份的函数 171

8.4.6  获取星期的函数 171

8.4.7  获取星期数的函数 172

8.4.8  获取天数的函数 173

8.4.9  获取年份、季度、小时、分钟和

秒钟的函数 174

8.4.10  获取日期的指定值的函数 175

8.4.11  时间和秒钟转换的函数 175

8.4.12  计算日期和时间的函数 176

8.4.13  将日期和时间格式化的函数 178

8.5  条件判断函数 181

8.5.1  IF(expr,v1,v2)函数 181

8.5.2  IFNULL(v1,v2)函数 182

8.5.3  CASE函数 182

8.6  系统信息函数 183

8.6.1  获取MySQL版本号 183

8.6.2  获取用户名的函数 185

8.6.3  获取字符串的字符集和排序

方式的函数 185

8.7  加密函数 186

8.8  窗口函数 187

8.9  MySQL函数的使用示例 188

8.10  本章小结 192

8.11  思考与练习 192

第9章  运算符 193

9.1  运算符概述 193

9.2  算术运算符 194

9.3  比较运算符 196

9.3.1  常用的比较运算符 197

9.3.2  特殊功能的比较运算符 199

9.4  逻辑运算符 203

9.5  位运算符 204

9.6  运算符的优先级 206

9.7  运算符综合示例 207

9.8  本章小结 209

9.9  思考与练习 210

第10章  视图 211

10.1  视图概述 211

10.1.1  视图的含义 211

10.1.2  视图的作用 212

10.2  创建视图 213

10.2.1  创建视图的语法形式 213

10.2.2  在单表上创建视图 214

10.2.3  在多表上创建视图 214

10.3  查看视图 215

10.3.1  使用DESCRIBE语句查看视图的

基本信息 215

10.3.2  使用SHOW TABLE STATUS语句

查看视图的基本信息 216

10.3.3  使用SHOW CREATE VIEW语句

查看视图的详细信息 217

10.3.4  在views表中查看视图的详细

信息 217

10.4  修改视图 218

10.4.1  使用CREATE OR REPLACE VIEW

语句修改视图 218

10.4.2  使用ALTER语句修改视图 218

10.5  更新视图 219

10.6  删除视图 221

10.7  本章实战 221

10.8  本章小结 224

10.9  思考与练习 225

第11章  存储程序 226

11.1  创建、调用存储过程和函数 226

11.1.1  创建和调用存储过程 226

11.1.2  创建和调用存储函数 231

11.1.3  变量的使用 232

11.1.4  定义条件和处理程序 233

11.1.5  光标的使用 236

11.1.6  流程控制的使用 237

11.2  查看存储过程和函数 241

11.2.1  使用SHOW STATUS语句

查看存储过程和函数的状态 241

11.2.2  使用SHOW CREATE语句

查看存储过程和函数的定义 241

11.2.3  从information_schema.Routines表中

查看存储过程和函数的信息 242

11.3  修改存储过程和函数 243

11.4  删除存储过程和函数 244

11.5  MySQL 8.0的全局变量的

持久化 245

11.6  本章小结 246

11.7  思考与练习 246

第12章  触发器 247

12.1  创建触发器 247

12.1.1  创建只有一个执行语句的

触发器 247

12.1.2  创建有多个执行语句的触发器 248

12.2  查看触发器 250

12.2.1  使用SHOW TRIGGERS语句

查看触发器 250

12.2.2  在triggers表中查看触发器信息 252

12.3  触发器的使用 253

12.4  删除触发器 254

12.5  本章实战 254

12.6  本章小结 255

12.7  思考与练习 256

第13章  MySQL权限与安全管理 257

13.1  权限表 257

13.1.1  user表 257

13.1.2  db表 259

13.1.3  tables_priv表和columns_priv表 261

13.1.4  procs_priv表 261

13.2  账户管理 262

13.2.1  登录和退出MySQL服务器 262

13.2.2  新建普通用户 263

13.2.3  删除普通用户 265

13.2.4  root用户修改自己的密码 266

13.2.5  root用户修改普通用户密码 266

13.3  权限管理 267

13.3.1  MySQL的各种权限 267

13.3.2  授权 269

13.3.3  收回权限 271

13.3.4  查看权限 272

13.4  访问控制 273

13.4.1  连接核实阶段 273

13.4.2  请求核实阶段 273

13.5  提升安全性的措施 274

13.5.1  AES 256加密 274

13.5.2  密码到期更换策略 276

13.5.3  安全模式安装 278

13.6  管理角色 278

13.7  本章实战 279

13.8  本章小结 282

13.9  思考与练习 282

第14章  数据备份与恢复 283

14.1  数据备份 283

14.1.1  使用MySQLdump命令备份 283

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

14.1.3  使用MySQLhotcopy工具快速

备份 288

14.2  数据恢复 289

14.2.1  使用MySQL命令恢复 289

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

14.2.3  MySQLhotcopy快速恢复 290

14.3  数据库迁移 290

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

迁移 290

14.3.2  不同版本的MySQL数据库之间的

迁移 291

14.3.3  不同数据库之间的迁移 291

14.4  表的导出和导入 291

14.4.1  使用SELECT...INTO OUTFILE

导出文本文件 292

14.4.2  使用MySQLdump导出文本

文件 295

14.4.3  使用MySQL导出文本文件 297

14.4.4  使用LOAD DATA INFILE方式

导入文本文件 299

14.4.5  使用MySQLimport导入文本

文件 300

14.5  本章实战 301

14.6  本章小结 305

14.7  思考与练习 305

第15章  MySQL日志 306

15.1  日志简介 306

15.2  二进制日志 307

15.2.1  启动和设置二进制日志 307

15.2.2  查看二进制日志 308

15.2.3  删除二进制日志 309

15.2.4  使用二进制日志恢复数据库 310

15.2.5  暂时停止二进制日志功能 311

15.3  错误日志 311

15.3.1  启动和设置错误日志 311

15.3.2  查看错误日志 312

15.3.3  删除错误日志 312

15.4  通用查询日志 313

15.4.1  启动通用查询日志 313

15.4.2  查看通用查询日志 313

15.4.3  删除通用查询日志 314

15.5  慢查询日志 314

15.5.1  启动和设置慢查询日志 314

15.5.2  查看慢查询日志 315

15.5.3  删除慢查询日志 315

15.6  本章实战 315

15.7  本章小结 321

15.8  思考与练习 321

第16章  性能优化 322

16.1  优化简介 322

16.2  优化查询 323

16.2.1  分析查询语句 323

16.2.2  索引对查询速度的影响 325

16.2.3  使用索引查询 326

16.2.4  优化子查询 328

16.3  优化数据库结构 329

16.3.1  将字段很多的表分解成多个表 329

16.3.2  增加中间表 330

16.3.3  增加冗余字段 331

16.3.4  优化插入记录的速度 331

16.3.5  分析表、检查表和优化表 333

16.4  优化MySQL服务器 335

16.4.1  优化服务器硬件 335

16.4.2  优化MySQL的参数 335

16.5  临时表性能优化 336

16.6  服务器语句超时处理 338

16.7  创建全局通用表空间 338

16.8  本章实战 339

16.9  本章小结 341

16.10  思考与练习 341

第17章  综合项目 342

17.1  图书管理系统 342

17.1.1  需求管理 342

17.1.2  创建数据库 345

17.1.3  图书管理 349

17.1.4  用户信息管理 350

17.1.5  图书借阅管理 351

17.1.6  视图管理 352

17.2  网上购物系统 354

17.2.1  系统功能描述 354

17.2.2  系统功能分析 355

17.2.3  代码实现 357

17.2.4  程序运行 367

17.3  本章小结 369

17.4  思考与练习 369

参考文献 370

 

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘