| 作者 |
| 李辉 |
| 丛书名 |
| 出版社 |
| 电子工业出版社 |
| ISBN |
| 9787121362279 |
| 简要 |
| 简介 |
| 内容简介书籍教材书店 本书全面系统地介绍了数据库系统的基本概念、基本原理和基本技术,以Linux操作系统下的MySQL为背景介绍了数据库技术的实现,包括数据库和数据表的维护、查询与统计、视图管理、存储过程和触发器的管理、用户管理、约束和默认管理、数据库的备份和还原、存储过程等内容,读者可以充分利用MySQL平台深刻理解数据库技术的原理,达到理论和实践紧密结合的目的,也解决了学习者安装上机数据库管理系统软件中的操作系统兼容性问题。 本书内容循序渐进,深入浅出,概念清晰,条理性强,每章都给出了一些实例,为缓解学习者初期动手的茫然与困惑,每章安排上机实践任务;通过对数据库新技术的介绍,可以让读者简单了解目前数据库发展的前沿技术。 本书可作为高等院校计算机、数据科学与大数据等相关专业“数据库原理及应用”课程的配套教材,也可以供参加数据库类考试的人员、数据库应用系统开发设计人员、工程技术人员及其他相关人员参阅。 |
| 目录 |
| 第1章 数据库系统概述 1 1.1 数据与数据管理技术 1 1.1.1 数据库的基本概念 1 1.1.2 数据管理技术的发展 5 1.2 数据库系统的特点及组成 7 1.2.1 数据库系统的特点 7 1.2.2 数据库系统的组成 9 1.3 数据库系统结构 10 1.3.1 三级模式结构 10 1.3.2 数据库系统体系结构 13 小结 14 思考与练习1 14 第2章 信息与数据模型 16 2.1 信息的三种世界及描述 16 2.2 数据模型 17 2.2.1 数据模型的概念 17 2.2.2 数据处理三层抽象描述 17 2.2.3 数据模型的要素 18 2.3.4 数据模型与数据模式的区别 19 2.3 概念模型 19 2.3.1 基本概念 20 2.3.2 E-R模型 20 2.4 逻辑模型 23 2.5 概念模型向逻辑模型的转换 26 小结 27 思考与练习2 28 实验:概念模型(E-R图)画法与逻辑模式转换 31 第3章 关系代数与关系数据库规范化 34 3.1 关系代数及其运算 34 3.1.1 关系的数学定义 34 3.1.2 关系代数概述 35 3.1.3 传统的集合运算 36 3.1.4 专门的关系运算 38 3.2 关系演算 44 3.2.1 元组关系演算 44 3.2.2 域关系演算 45 3.3 关系代数表达式的优化 46 3.4 关系数据库理论 46 3.4.1 问题的提出 47 3.4.2 函数依赖 48 3.5 关系模式的范式及规范化 55 3.6 关系模式的分解 59 小结 65 思考与练习3 65 实验:关系的完整性、规范化理解与应用 68 第4章 数据库设计方法 71 4.1 数据库设计概述 71 4.1.1 数据库设计的内容 71 4.1.2 数据库设计的特点 72 4.1.3 数据库设计方法 72 4.1.4 数据库设计的阶段 73 4.2 需求分析 76 4.2.1 需求描述与分析 76 4.2.2 需求分析分类 76 4.2.3 需求分析的内容、方法和步骤 77 4.2.4 数据字典 79 4.3 概念结构设计 80 4.3.1 概念结构设计的必要性及要求 80 4.3.2 概念结构设计的方法和步骤 81 4.3.3 采用E-R模型设计概念结构的方法 83 4.4 逻辑结构设计 87 4.4.1 E-R图向关系模型的转换 87 4.4.2 关系模式规范化 88 4.4.3 模式评价和改进 88 4.5 物理结构设计 89 4.5.1 物理结构设计的内容和方法 89 4.5.2 评价物理结构 90 4.6 数据库行为设计 91 4.7 数据库实施 92 4.8 数据库的运行和维护 93 小结 94 思考与练习4 94 实验:数据库设计 97 第5章 MySQL概述 99 5.1 MySQL简介 99 5.2 MySQL工作流程 102 5.3 MySQL数据库系统 103 5.4 MySQL服务器和端口号 105 5.5 MySQL的安装和使用 105 5.6 通过Navicat操作MySQL 112 小结 117 思考与练习5 117 第6章 存储引擎与数据库操作管理 118 6.1 存储引擎 118 6.1.1 存储引擎概述 118 6.1.2 常用存储引擎 120 6.1.3 其他存储引擎 122 6.1.4 存储引擎的选择 122 6.2 字符集 123 6.2.1 MySQL支持的字符集 123 6.2.2 MySQL字符集的选择 126 6.2.3 MySQL字符集的设置 126 6.3 创建数据库 128 6.4 修改数据库名称 130 6.5 删除数据库 130 小结 131 思考与练习6 131 实验:MySQL安装创建和维护数据库实验 132 第7章 表定义与完整性约束控制 133 7.1 表的基本概念 133 7.2 MySQL的数据类型 133 7.2.1 MySQL常用的数据类型 134 7.2.2 选择合适的数据类型 137 7.3 MySQL运算符 137 7.4 MySQL表的操作 138 7.4.1 表的基本操作 138 7.4.2 表管理的注意事项 143 7.5 MySQL约束控制 144 7.5.1 数据完整性约束 144 7.5.2 字段的约束 144 7.5.3 删除约束 152 小结 152 思考与练习7 152 实验:MySQL表定义和完整性约束控制 153? 第8章 数据操作管理 159 8.1 插入数据 159 8.1.1 为表的所有字段插入数据 159 8.1.2 为表的指定字段插入数据 161 8.1.3 同时插入多条记录 161 8.1.4 从目标表中插入值 163 8.1.5 REPLACE语句 163 8.2 修改数据 163 8.3 删除数据 164 8.3.1 删除表数据 164 8.3.2 清空表数据 165 8.4 单表查询 166 8.4.1 SELECT语句 166 8.4.2 简单查询 166 8.4.3 条件查询 169 8.4.4 高级查询 174 8.5 多表查询 181 8.5.1 内连接查询 181 8.5.2 外连接查询 183 8.5.3 子查询 184 小结 188 思考与练习8 188 实验:MYSQL数据库表的数据操作 192 实验1 MySQL数据库表的数据插入、修改、删除操作实验 192 实验2 MySQL数据库表数据的查询操作实验 193 第9章 索引 196 9.1 索引概述 196 9.1.1 索引的作用 196 9.1.2 索引的分类 198 9.2 索引的定义和管理 198 9.2.1 创建索引 198 9.2.2 查看索引 205 9.2.3 删除索引 206 9.3 设计原则和注意事项 207 小结 208 思考与练习9 208 实验:索引创建与管理 209 第10章 视图 211 10.1 视图概述 211 10.1.1 视图的优势 211 10.1.2 视图的工作机制 212 10.2 视图的定义和管理 212 10.2.1 创建视图 212 10.2.2 删除视图 214 10.2.3 查看视图定义 215 10.2.4 修改视图定义 216 10.3 更新视图数据 218 10.4 对视图的进一步说明 219 小结 220 思考与练习10 220 实验:视图的创建与管理 221 第11章 存储过程和存储函数 224 11.1 存储过程与存储函数概述 224 11.2 存储过程和存储函数的操作 225 11.2.1 创建存储过程或存储函数 225 11.2.2 变量 229 11.2.3 定义条件和处理 230 11.2.4 游标的使用 232 11.2.5 流程的控制 234 11.2.6 查看存储过程或存储函数 236 11.2.7 删除存储过程或存储函数 238 11.3 系统函数 239 小结 241 思考与练习11 241 实验:存储过程与存储函数的创建和管理 242 第12章 触发器和事件调度器 251 12.1 触发器 245 12.1.1 触发器概述 245 12.1.2 创建使用触发器 246 12.1.3 查看触发器 249 12.1.4 删除触发器 250 12.1.5 对触发器的进一步说明 250 12.2 事件调度器 250 12.2.1 创建事件 251 12.2.2 修改事件 252 12.2.3 删除事件 253 小结 253 思考与练习12 253 实验:触发器的创建和管理 254? 第13章 权限管理 256 13.1 访问控制 256 13.2 权限表 256 13.2.1 user表 257 13.2.2 db表和host表 258 13.2.3 tables_priv表 259 13.2.4 columns_priv表 259 13.2.5 procs_priv表 260 13.3 用户管理 260 13.3.1 添加用户 260 13.3.2 查看用户 262 13.3.3 修改用户账号 263 13.3.4 修改用户口令 263 13.3.5 删除用户 264 13.4 账户权限管理 265 13.4.1 权限授予 265 13.4.2 权限的转移和限制 267 13.4.3 权限的撤销 268 小 结 269 思考与练习13 269 实验:数据库的安全机制和管理 270 第14章 事务和多用户并发控制 271 14.1 事务 271 14.1.1 事务的概念 271 14.1.2 事务的ACID特性 272 14.1.3 事务控制语句 273 14.1.4 事务的隔离性级别 274 14.2 并发控制 275 14.2.1 并发概述 275 14.2.2 锁概述 276 14.2.3 MyISAM表的表级锁 277 14.2.4 InnoDB表的行级锁 278 14.2.5 死锁 279 小结 280 思考与练习14 280 第15章 数据备份和还原 282 15.1 备份与还原概述 282 15.2 通过文件备份和还原 283 15.3 通过MYSQLDUMP备份和还原 284 15.3.1 备份 284 15.3.2 还原 285 15.4 表的导入和导出 286 小结 289 思考与练习15 289 第16章 日志管理 291 16.1 MySQL支持的日志 291 16.2 错误日志 292 16.3 二进制日志 293 16.4 慢查询日志 295 16.5 通用查询日志 296 小结 297 思考与练习16 297 实验:MySQL日志管理 297 第17章 分布式数据库与复制、集群技术 299 17.1 分布式数据库系统 299 17.1.1 集中式和分布式 299 17.1.2 分布式数据库基本概念 300 17.1.3 DDB模式结构 301 17.1.4 分布式数据库管理系统 304 17.1.5 分布式数据库系统 306 17.2 分布式数据存储 307 17.2.1 数据复制方法 307 17.2.2 数据分片 308 17.3 MySQL复制技术 310 17.4 MySQL集群技术 313 17.4.1 MySQL集群技术概述 313 17.4.2 Linux环境下MySQL Cluster的安装和配置 314 小结 318 思考与练习17 318 第18章 非关系型数据库NOSQL 319 18.1 数据库比较 319 18.1.1 关系型数据库的优势 319 18.1.2 关系型数据库的劣势 319 18.1.3 NoSQL数据库的优势 320 18.2 NOSQL数据库的类型 321 18.2.1 键值(key/value)存储 322 18.2.2 面向文档的数据库 322 18.2.3 面向列的数据库 323 18.3 NOSQL数据库选用原则 323 18.4 NOSQL的CAP理论 324 18.4.1 NoSQL系统是分布式系统 324 18.4.2 CAP理论阐述 324 18.5 主流NOSQL数据库 325 18.5.1 HBase 325 18.5.2 Redis 326 18.5.3 MongoDB 327 18.5.4 Couchbase 329 18.5.5 LevelDB 330 18.6 MONGODB实战 331 18.6.1 MongoDB的基本概念 331 18.6.2 Linux下MongoDB的安装和配置、启动与停止 333 18.6.3 MongoDB基本数据操作 335 小结 341 思考与练习18 341 本章小结 319 第19章 Python+MySQL编程应用 342 19.1 Python简介 342 19.2 Python图形界面编程基础 343 19.3 使用Python进行MySQL数据库编程 346 19.4 学生信息管理系统开发实例 352 小结 357 参考文献 358 |