MySQL基础与实例教程

MySQL基础与实例教程
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2020-08
版次: 1
ISBN: 9787115527851
定价: 59.80
装帧: 其他
开本: 16开
纸张: 胶版纸
页数: 320页
字数: 1千字
47人买过
  • 本书以“案例先行、任务驱动、增设场景、案例实训”为编写模式,由浅入深、循序渐进、系统地介绍了MySQL的相关知识及其在数据库开发中的实际应用,并通过具体案例,帮助读者巩固所学知识,以便更好地进行开发实践。全书书共10章,内容涵盖了数据库设计、MySQL基础知识、表管理、函数、存储过程、触发器、事务和锁机制等。 孔祥盛,长期从事网络数据库技术、网页设计与制作、PHP教学与培训等工作,具有丰富的教学与研究开发经验,积累了大量的开发案例。编写的PHP教材语言通俗易懂,言简意赅,用极其短小精干的案例讲述技术知识,受到广大初学者的推崇。 第1章 数据库设计概述 1

    1.1 数据库概述 1

    1.1.1 关系数据库管理系统 1

    1.1.2 关系 2

    1.1.3 结构化查询语言 3

    1.2 数据库设计的相关知识 3

    1.2.1 商业知识和沟通技能 3

    1.2.2 数据库设计辅助工具 4

    1.2.3 “选课系统”概述 5

    1.2.4 定义问题域 6

    1.2.5 编码规范 6

    1.3 E-R图 7

    1.3.1 实体和属性 7

    1.3.2 关系 8

    1.3.3 E-R图的设计原则 10

    1.4 关系数据库设计 13

    1.4.1 为每个实体建立一张数据库表 13

    1.4.2 为每张表定义一个主键 13

    1.4.3 增加外键表示一对多关系 15

    1.4.4 建立新表表示多对多关系 16

    1.4.5 为字段选择合适的数据类型 17

    1.4.6 定义约束条件 18

    1.4.7 评价数据库表设计的质量 19

    1.4.8 使用规范化减少数据冗余 20

    1.5 课堂专题讨论:冗余数据的弊与利 23

    习题 25

    第2章 MySQL基础知识 27

    2.1 MySQL概述 27

    2.1.1 MySQL的特点 27

    2.1.2 MySQL的版本选择和安装 29

    2.1.3 MySQL的图形化界面参数配置 31

    2.1.4 MySQL配置文件 35

    2.1.5 启动与停止MySQL服务 36

    2.1.6 MySQL客户机 37

    2.1.7 使用CMD命令提示符窗口

    连接MySQL服务器 38

    2.2 字符集与字符序的设置 40

    2.2.1 字符集与字符序的概念 40

    2.2.2 MySQL字符集与字符序 41

    2.2.3 MySQL字符集的转换过程 43

    2.2.4 MySQL中文简体字符集的选择和

    设置 44

    2.2.5 SQL脚本文件 46

    2.3 MySQL数据库管理 46

    2.3.1 查看数据库 46

    2.3.2 创建数据库 47

    2.3.3 选择当前操作的数据库 48

    2.3.4 显示数据库结构 48

    2.3.5 删除数据库 48

    2.3.6 if exists条件运算符 49

    2.4 MySQL表管理 49

    2.4.1 MyISAM和InnoDB存储引擎 49

    2.4.2 创建数据库表 51

    2.4.3 显示表结构 51

    2.4.4 表记录的管理 52

    2.4.5 删除表结构 52

    2.4.6 共享表空间与独享表空间  53

    2.5 系统变量 53

    2.5.1 系统变量作用域 53

    2.5.2 查看系统变量的值 54

    2.5.3 重置系统变量的值 54

    习题 55

    实践任务1 MySQL中文简体字符集问题(必做) 56

    实践任务2 MySQL系统变量的使用(必做) 63

    实践任务3 共享表空间与独享表空间物理存储的区别(选做) 69

    实践任务4 数据库表和存储引擎(选做) 70

    第3章 MySQL表结构的管理 72

    3.1 MySQL数据类型 72

    3.1.1 MySQL整数类型 72

    3.1.2 MySQL小数类型 73

    3.1.3 MySQL字符串类型 74

    3.1.4 MySQL日期类型 75

    3.1.5 MySQL复合类型 75

    3.1.6 MySQL二进制类型 75

    3.1.7 选择合适的数据类型 76

    3.2 创建表结构 77

    3.2.1 设置约束 77

    3.2.2 设置自增型字段 81

    3.2.3 其他选项的设置 81

    3.3 表结构的复制 82

    3.4 表结构的修改 82

    3.4.1 表字段的修改 82

    3.4.2 约束条件的修改 83

    3.4.3 表的其他选项的修改 83

    3.5 表结构的删除 83

    3.6 索引 84

    3.6.1 课堂专题讨论—理解索引 84

    3.6.2 课堂专题讨论—索引关键字的选取原则 87

    3.6.3 索引与约束 88

    3.6.4 创建索引 89

    3.6.5 查看索引 89

    3.6.6 删除索引 90

    习题 90

    实践任务1 MySQL数据类型(选做) 90

    实践任务2 创建“选课系统”数据库表(必做) 96

    实践任务3 表结构的操作(选做) 98

    实践任务4 索引的操作(必做) 101

    第4章 表记录的更新操作 104

    4.1 表记录的插入 104

    4.1.1 使用insert语句插入记录 104

    4.1.2 批量插入多条记录 106

    4.1.3 使用insert…select插入查询结果集 107

    4.2 表记录的修改 108

    4.3 表记录的删除 109

    4.3.1 使用delete删除表记录 109

    4.3.2 使用truncate清空表记录 109

    4.4 更新操作补充知识 109

    4.4.1 课堂专题讨论—更新操作与外键约束关系 109

    4.4.2 使用replace替换记录 110

    4.5 MySQL特殊字符序列 110

    习题 112

    实践任务 表记录的更新操作(必做) 113

    第5章 表记录的检索 118

    5.1 select语句概述 118

    5.1.1 使用select子句指定字段列表 119

    5.1.2 distinct和limit 120

    5.1.3 表和表之间的连接 120

    5.2 使用where子句过滤结果集 122

    5.2.1 使用单一的条件过滤结果集 123

    5.2.2 is NULL运算符 123

    5.2.3 使用逻辑运算符 124

    5.2.4 使用like进行模糊查询 126

    5.3 使用order by子句对结果集排序 127

    5.4 使用聚合函数汇总结果集 129

    5.5 使用group by子句对记录分组统计 130

    5.5.1 group by子句与聚合函数 131

    5.5.2 group by子句与having子句 131

    5.5.3 group by子句与group_concat()函数 132

    5.5.4 group by子句与with rollup选项 132

    5.6 合并结果集 133

    5.7 子查询 134

    5.7.1 子查询与比较运算符 134

    5.7.2 子查询与in运算符 136

    5.7.3 子查询与exists逻辑运算符 137

    5.7.4 子查询与any运算符 138

    5.7.5 子查询与all运算符 138

    5.8 使用正则表达式模糊查询 139

    5.9 使用中文全文索引模糊查询 141

    习题 142

    实践任务1 选课系统综合查询(必做) 142

    实践任务2 中文全文检索的应用(必做) 148

    实践任务3 中文全文检索停用词的应用(选做) 153

    第6章 MySQL编程基础和函数 155

    6.1 MySQL编程基础知识 155

    6.1.1 常量 155

    6.1.2 运算符与表达式 157

    6.1.3 用户自定义变量 159

    6.1.4 begin-end语句块 163

    6.1.5 重置命令结束标记 163

    6.1.6 条件控制语句 164

    6.1.7 循环语句和循环控制语句 165

    6.2 自定义函数 166

    6.2.1 自定义函数使用示例 167

    6.2.2 查看函数的定义 169

    6.2.3 修改函数的定义 170

    6.2.4 删除函数的定义 170

    6.3 系统函数 170

    6.3.1 数学函数 170

    6.3.2 类型转换函数 172

    6.3.3 字符串函数 173

    6.3.4 条件控制函数 177

    6.3.5 日期和时间函数 179

    6.3.6 其他常用的MySQL函数 184

    习题 186

    实践任务1 MySQL编程基础与自定义函数(必做) 187

    实践任务2 系统函数结合自定义函数的综合使用(选做) 192

    第7章 视图、临时表、派生表 198

    7.1 视图 198

    7.1.1 创建视图 198

    7.1.2 查看视图的定义 199

    7.1.3 视图的作用 200

    7.1.4 删除视图 200

    7.1.5 检查视图  200

    7.2 临时表 201

    7.2.1 临时表概述 201

    7.2.2 临时表的创建、查看与删除 202

    7.2.3 使用临时表的注意事项 203

    7.3 派生表 203

    7.4 子查询、视图、临时表、派生表之间的关系 203

    习题 204

    实践任务 视图、临时表、派生表在“选课系统”中的应用(必做) 204

    第8章 触发器、存储过程和异常处理 210

    8.1 触发器 210

    8.1.1 创建触发器的语法格式 210

    8.1.2 查看触发器的定义 211

    8.1.3 删除触发器 212

    8.1.4 使用触发器的注意事项 212

    8.2 存储过程 213

    8.2.1 创建存储过程的语法格式 213

    8.2.2 存储过程的调用 214

    8.2.3 查看存储过程的定义 214

    8.2.4 删除存储过程 214

    8.3 存储过程与函数的比较 214

    8.4 存储程序的说明 215

    8.5 异常处理机制 216

    8.5.1 异常处理程序 216

    8.5.2 异常代码重命名 217

    8.5.3 自定义异常处理程序说明 217

    习题 217

    实践任务 触发器、存储过程和异常处理(必做) 217

    第9章 事务机制与锁机制 231

    9.1 事务机制 231

    9.1.1 重现数据不一致问题 231

    9.1.2 问题分析与解决问题思路 231

    9.1.3 关闭自动提交、回滚、提交 232

    9.1.4 保存点 232

    9.1.5 事务的用法 233

    9.1.6 隐式提交 233

    9.2 InnoDB锁 234

    9.2.1 锁机制的必要性 234

    9.2.2 锁机制的基础知识 234

    9.2.3 InnoDB表的行级锁 237

    9.2.4 InnoDB锁与索引之间的关系 237

    9.2.5 死锁 238

    9.2.6 InnoDB表的意向锁 239

    9.3 事务的隔离级别  240

    9.3.1 事务的ACID特性 240

    9.3.2 事务的隔离级别与并发问题 241

    9.3.3 设置事务的隔离级别 242

    9.3.4 使用间隙锁避免幻读现象 242

    9.4 事务与锁机制注意事项 242

    习题 243

    实践任务1 事务机制和锁机制(必做) 243

    实践任务2 事务的隔离级别(选做) 262

    第10章 网上选课系统的开发 269

    10.1 PHP预备知识 269

    10.1.1 为何选用B/S结构及PHP脚本语言 269

    10.1.2 PHP脚本语言概述 270

    10.1.3 PHP脚本程序的工作流程 271

    10.2 软件开发生命周期 273

    10.3 网上选课系统的系统规划 273

    10.3.1 网上选课系统的目标 273

    10.3.2 网上选课系统的可行性分析 273

    10.3.3 网上选课系统的项目进度表 274

    10.3.4 网上选课系统的人员分工 275

    10.4 网上选课系统的系统分析 275

    10.4.1 网上选课系统的功能需求分析 275

    10.4.2 网上选课系统的非功能需求分析 277

    10.5 网上选课系统的系统设计 278

    10.6 MVC在网上选课系统中的应用 280

    10.6.1 MVC的历史与简介 280

    10.6.2 MVC在网上选课系统中的应用 280

    10.7 网上选课系统的测试 282

    习题 283

    实践任务 网上选课系统的系统实施(必做) 283

    第11章 数据备份与恢复  312

    11.1 mysqldump数据备份 312

    11.2 数据恢复 313

    实践任务 选课系统中的数据备份与数据恢复(选做) 315

    参考文献 319
  • 内容简介:
    本书以“案例先行、任务驱动、增设场景、案例实训”为编写模式,由浅入深、循序渐进、系统地介绍了MySQL的相关知识及其在数据库开发中的实际应用,并通过具体案例,帮助读者巩固所学知识,以便更好地进行开发实践。全书书共10章,内容涵盖了数据库设计、MySQL基础知识、表管理、函数、存储过程、触发器、事务和锁机制等。
  • 作者简介:
    孔祥盛,长期从事网络数据库技术、网页设计与制作、PHP教学与培训等工作,具有丰富的教学与研究开发经验,积累了大量的开发案例。编写的PHP教材语言通俗易懂,言简意赅,用极其短小精干的案例讲述技术知识,受到广大初学者的推崇。
  • 目录:
    第1章 数据库设计概述 1

    1.1 数据库概述 1

    1.1.1 关系数据库管理系统 1

    1.1.2 关系 2

    1.1.3 结构化查询语言 3

    1.2 数据库设计的相关知识 3

    1.2.1 商业知识和沟通技能 3

    1.2.2 数据库设计辅助工具 4

    1.2.3 “选课系统”概述 5

    1.2.4 定义问题域 6

    1.2.5 编码规范 6

    1.3 E-R图 7

    1.3.1 实体和属性 7

    1.3.2 关系 8

    1.3.3 E-R图的设计原则 10

    1.4 关系数据库设计 13

    1.4.1 为每个实体建立一张数据库表 13

    1.4.2 为每张表定义一个主键 13

    1.4.3 增加外键表示一对多关系 15

    1.4.4 建立新表表示多对多关系 16

    1.4.5 为字段选择合适的数据类型 17

    1.4.6 定义约束条件 18

    1.4.7 评价数据库表设计的质量 19

    1.4.8 使用规范化减少数据冗余 20

    1.5 课堂专题讨论:冗余数据的弊与利 23

    习题 25

    第2章 MySQL基础知识 27

    2.1 MySQL概述 27

    2.1.1 MySQL的特点 27

    2.1.2 MySQL的版本选择和安装 29

    2.1.3 MySQL的图形化界面参数配置 31

    2.1.4 MySQL配置文件 35

    2.1.5 启动与停止MySQL服务 36

    2.1.6 MySQL客户机 37

    2.1.7 使用CMD命令提示符窗口

    连接MySQL服务器 38

    2.2 字符集与字符序的设置 40

    2.2.1 字符集与字符序的概念 40

    2.2.2 MySQL字符集与字符序 41

    2.2.3 MySQL字符集的转换过程 43

    2.2.4 MySQL中文简体字符集的选择和

    设置 44

    2.2.5 SQL脚本文件 46

    2.3 MySQL数据库管理 46

    2.3.1 查看数据库 46

    2.3.2 创建数据库 47

    2.3.3 选择当前操作的数据库 48

    2.3.4 显示数据库结构 48

    2.3.5 删除数据库 48

    2.3.6 if exists条件运算符 49

    2.4 MySQL表管理 49

    2.4.1 MyISAM和InnoDB存储引擎 49

    2.4.2 创建数据库表 51

    2.4.3 显示表结构 51

    2.4.4 表记录的管理 52

    2.4.5 删除表结构 52

    2.4.6 共享表空间与独享表空间  53

    2.5 系统变量 53

    2.5.1 系统变量作用域 53

    2.5.2 查看系统变量的值 54

    2.5.3 重置系统变量的值 54

    习题 55

    实践任务1 MySQL中文简体字符集问题(必做) 56

    实践任务2 MySQL系统变量的使用(必做) 63

    实践任务3 共享表空间与独享表空间物理存储的区别(选做) 69

    实践任务4 数据库表和存储引擎(选做) 70

    第3章 MySQL表结构的管理 72

    3.1 MySQL数据类型 72

    3.1.1 MySQL整数类型 72

    3.1.2 MySQL小数类型 73

    3.1.3 MySQL字符串类型 74

    3.1.4 MySQL日期类型 75

    3.1.5 MySQL复合类型 75

    3.1.6 MySQL二进制类型 75

    3.1.7 选择合适的数据类型 76

    3.2 创建表结构 77

    3.2.1 设置约束 77

    3.2.2 设置自增型字段 81

    3.2.3 其他选项的设置 81

    3.3 表结构的复制 82

    3.4 表结构的修改 82

    3.4.1 表字段的修改 82

    3.4.2 约束条件的修改 83

    3.4.3 表的其他选项的修改 83

    3.5 表结构的删除 83

    3.6 索引 84

    3.6.1 课堂专题讨论—理解索引 84

    3.6.2 课堂专题讨论—索引关键字的选取原则 87

    3.6.3 索引与约束 88

    3.6.4 创建索引 89

    3.6.5 查看索引 89

    3.6.6 删除索引 90

    习题 90

    实践任务1 MySQL数据类型(选做) 90

    实践任务2 创建“选课系统”数据库表(必做) 96

    实践任务3 表结构的操作(选做) 98

    实践任务4 索引的操作(必做) 101

    第4章 表记录的更新操作 104

    4.1 表记录的插入 104

    4.1.1 使用insert语句插入记录 104

    4.1.2 批量插入多条记录 106

    4.1.3 使用insert…select插入查询结果集 107

    4.2 表记录的修改 108

    4.3 表记录的删除 109

    4.3.1 使用delete删除表记录 109

    4.3.2 使用truncate清空表记录 109

    4.4 更新操作补充知识 109

    4.4.1 课堂专题讨论—更新操作与外键约束关系 109

    4.4.2 使用replace替换记录 110

    4.5 MySQL特殊字符序列 110

    习题 112

    实践任务 表记录的更新操作(必做) 113

    第5章 表记录的检索 118

    5.1 select语句概述 118

    5.1.1 使用select子句指定字段列表 119

    5.1.2 distinct和limit 120

    5.1.3 表和表之间的连接 120

    5.2 使用where子句过滤结果集 122

    5.2.1 使用单一的条件过滤结果集 123

    5.2.2 is NULL运算符 123

    5.2.3 使用逻辑运算符 124

    5.2.4 使用like进行模糊查询 126

    5.3 使用order by子句对结果集排序 127

    5.4 使用聚合函数汇总结果集 129

    5.5 使用group by子句对记录分组统计 130

    5.5.1 group by子句与聚合函数 131

    5.5.2 group by子句与having子句 131

    5.5.3 group by子句与group_concat()函数 132

    5.5.4 group by子句与with rollup选项 132

    5.6 合并结果集 133

    5.7 子查询 134

    5.7.1 子查询与比较运算符 134

    5.7.2 子查询与in运算符 136

    5.7.3 子查询与exists逻辑运算符 137

    5.7.4 子查询与any运算符 138

    5.7.5 子查询与all运算符 138

    5.8 使用正则表达式模糊查询 139

    5.9 使用中文全文索引模糊查询 141

    习题 142

    实践任务1 选课系统综合查询(必做) 142

    实践任务2 中文全文检索的应用(必做) 148

    实践任务3 中文全文检索停用词的应用(选做) 153

    第6章 MySQL编程基础和函数 155

    6.1 MySQL编程基础知识 155

    6.1.1 常量 155

    6.1.2 运算符与表达式 157

    6.1.3 用户自定义变量 159

    6.1.4 begin-end语句块 163

    6.1.5 重置命令结束标记 163

    6.1.6 条件控制语句 164

    6.1.7 循环语句和循环控制语句 165

    6.2 自定义函数 166

    6.2.1 自定义函数使用示例 167

    6.2.2 查看函数的定义 169

    6.2.3 修改函数的定义 170

    6.2.4 删除函数的定义 170

    6.3 系统函数 170

    6.3.1 数学函数 170

    6.3.2 类型转换函数 172

    6.3.3 字符串函数 173

    6.3.4 条件控制函数 177

    6.3.5 日期和时间函数 179

    6.3.6 其他常用的MySQL函数 184

    习题 186

    实践任务1 MySQL编程基础与自定义函数(必做) 187

    实践任务2 系统函数结合自定义函数的综合使用(选做) 192

    第7章 视图、临时表、派生表 198

    7.1 视图 198

    7.1.1 创建视图 198

    7.1.2 查看视图的定义 199

    7.1.3 视图的作用 200

    7.1.4 删除视图 200

    7.1.5 检查视图  200

    7.2 临时表 201

    7.2.1 临时表概述 201

    7.2.2 临时表的创建、查看与删除 202

    7.2.3 使用临时表的注意事项 203

    7.3 派生表 203

    7.4 子查询、视图、临时表、派生表之间的关系 203

    习题 204

    实践任务 视图、临时表、派生表在“选课系统”中的应用(必做) 204

    第8章 触发器、存储过程和异常处理 210

    8.1 触发器 210

    8.1.1 创建触发器的语法格式 210

    8.1.2 查看触发器的定义 211

    8.1.3 删除触发器 212

    8.1.4 使用触发器的注意事项 212

    8.2 存储过程 213

    8.2.1 创建存储过程的语法格式 213

    8.2.2 存储过程的调用 214

    8.2.3 查看存储过程的定义 214

    8.2.4 删除存储过程 214

    8.3 存储过程与函数的比较 214

    8.4 存储程序的说明 215

    8.5 异常处理机制 216

    8.5.1 异常处理程序 216

    8.5.2 异常代码重命名 217

    8.5.3 自定义异常处理程序说明 217

    习题 217

    实践任务 触发器、存储过程和异常处理(必做) 217

    第9章 事务机制与锁机制 231

    9.1 事务机制 231

    9.1.1 重现数据不一致问题 231

    9.1.2 问题分析与解决问题思路 231

    9.1.3 关闭自动提交、回滚、提交 232

    9.1.4 保存点 232

    9.1.5 事务的用法 233

    9.1.6 隐式提交 233

    9.2 InnoDB锁 234

    9.2.1 锁机制的必要性 234

    9.2.2 锁机制的基础知识 234

    9.2.3 InnoDB表的行级锁 237

    9.2.4 InnoDB锁与索引之间的关系 237

    9.2.5 死锁 238

    9.2.6 InnoDB表的意向锁 239

    9.3 事务的隔离级别  240

    9.3.1 事务的ACID特性 240

    9.3.2 事务的隔离级别与并发问题 241

    9.3.3 设置事务的隔离级别 242

    9.3.4 使用间隙锁避免幻读现象 242

    9.4 事务与锁机制注意事项 242

    习题 243

    实践任务1 事务机制和锁机制(必做) 243

    实践任务2 事务的隔离级别(选做) 262

    第10章 网上选课系统的开发 269

    10.1 PHP预备知识 269

    10.1.1 为何选用B/S结构及PHP脚本语言 269

    10.1.2 PHP脚本语言概述 270

    10.1.3 PHP脚本程序的工作流程 271

    10.2 软件开发生命周期 273

    10.3 网上选课系统的系统规划 273

    10.3.1 网上选课系统的目标 273

    10.3.2 网上选课系统的可行性分析 273

    10.3.3 网上选课系统的项目进度表 274

    10.3.4 网上选课系统的人员分工 275

    10.4 网上选课系统的系统分析 275

    10.4.1 网上选课系统的功能需求分析 275

    10.4.2 网上选课系统的非功能需求分析 277

    10.5 网上选课系统的系统设计 278

    10.6 MVC在网上选课系统中的应用 280

    10.6.1 MVC的历史与简介 280

    10.6.2 MVC在网上选课系统中的应用 280

    10.7 网上选课系统的测试 282

    习题 283

    实践任务 网上选课系统的系统实施(必做) 283

    第11章 数据备份与恢复  312

    11.1 mysqldump数据备份 312

    11.2 数据恢复 313

    实践任务 选课系统中的数据备份与数据恢复(选做) 315

    参考文献 319
查看详情
相关图书 / 更多
MySQL基础与实例教程
MySQL数据库应用与维护项目式教程(微课版)
舒蕾 刘均
MySQL基础与实例教程
MySQL项目实战
赵丽梅
MySQL基础与实例教程
MySQL数据库应用技术项目教程(微课版)
吕学芳;莫新平;平涛
MySQL基础与实例教程
MySQL快速入门到精通
明日科技 编著
MySQL基础与实例教程
MySQL数据库原理、设计与应用(第2版)
黑马程序员
MySQL基础与实例教程
MySQL 8.0从入门到实战
张文亮
MySQL基础与实例教程
MySQL数据库管理与应用
河南打造前程科技有限公司
MySQL基础与实例教程
MySQL数据库技术与应用(微课版)
范瑛
MySQL基础与实例教程
MyBatis核心技术全解与项目实战
赖帆(@谷哥的小弟 )
MySQL基础与实例教程
MySQL数据库项目式教程()
陈亚峰 编
MySQL基础与实例教程
MySQL 8.0数据库原理与应用
吕凯;曹冬雪
MySQL基础与实例教程
MySQL数据库原理与应用(国家级实验教学示范中心联席会计算机学科组规划教材)
王金恒;王煜林;刘卓华;陈孝如