| 作者 |
| 魏祖宽 |
| 丛书名 |
| 出版社 |
| 电子工业出版社 |
| ISBN |
| 9787121381782 |
| 简要 |
| 简介 |
| 内容简介 本书从实用性和先进性出发,通过一个完整的数据库应用实例和数据,全面介绍数据库的基本理论、数据库的系统管理及数据库的设计与开发技术。全书共14章,主要内容包括:数据库系统概论、关系数据模型、关系数据库标准SQL语言、查询处理优化、事务与并发控制、数据库恢复技术、数据库安全、规范化理论、数据库设计方法、数据库新技术、典型商业数据库和选型,附录是完整的数据库实例和数据,以及实验指导书。本书提供免费电子课件、程序代码、习题参考答案和实例数据库文件。本书可作为高等学校软件工程和计算机专业本科及研究生的教材,也可供相关领域的技术和管理人员学习、参考。 |
| 目录 |
第1章 数据库系统概论\t1 1.1 数据库的基本概念\t1 1.1.1 信息与数据\t1 1.1.2 数据库\t2 1.1.3 数据库管理系统\t2 1.1.4 元数据\t2 1.2 数据模型\t2 1.2.1 组成要素\t3 1.2.2 概念数据模型\t3 1.2.3 逻辑数据模型\t4 1.3 数据管理技术的产生和发展\t7 1.4 数据库管理系统的功能与特点\t10 1.4.1 数据库管理系统的功能\t10 1.4.2 数据库管理系统的特点\t11 1.5 数据库系统的结构\t13 1.5.1 数据库三级模式结构\t13 1.5.2 数据库二级映像与数据独立性\t14 1.5.3 数据库的体系结构\t15 1.5.4 数据库系统的组成\t17 1.6 数据库语言\t18 1.6.1 数据定义语言\t19 1.6.2 数据操纵语言\t19 1.6.3 数据控制语言\t19 1.6.4 事务控制语言\t19 1.7 数据库技术的新发展\t19 1.7.1 数据库技术发展趋势\t19 1.7.2 新型数据库与大数据\t20 小结\t22 习题\t23 第2章 关系模型与关系代数\t24 2.1 关系模型\t24 2.1.1 基本概念\t24 2.1.2 关系模型的数据结构\t25 2.1.3 数据操作\t27 2.1.4 数据约束\t28 2.2 关系数据结构\t28 2.2.1 关系\t28 2.2.2 关系的性质\t30 2.2.3 关系模式\t30 2.3 关系操作\t32 2.4 关系的完整性\t32 2.4.1 实体完整性\t32 2.4.2 参照完整性\t33 2.4.3 自定义完整性\t34 2.5 关系数据模型的优缺点\t34 2.6 关系代数\t35 2.6.1 基本运算\t35 2.6.2 专门的关系运算\t37 2.6.3 扩展的关系运算\t42 2.7 关系演算\t43 2.7.1 元组关系演算\t43 2.7.2 域关系演算语言QBE\t44 小结\t47 习题\t48 第3章 数据库设计过程与方法\t50 3.1 数据库设计概述\t50 3.1.1 数据库的设计方法\t51 3.1.2 数据库开发生命周期方法\t53 3.1.3 数据库设计的基本过程\t55 3.2 数据库需求分析\t57 3.2.1 需求描述与分析\t57 3.2.2 需求分析的步骤\t58 3.2.3 数据字典\t62 3.3 数据库概念设计\t63 3.3.1 概念设计的必要性\t63 3.3.2 概念设计的方法和步骤\t64 3.3.3 概念设计工具:E-R图\t66 3.4 数据库逻辑设计与优化\t66 3.4.1 逻辑设计环境\t66 3.4.2 E-R模式向关系模型的转换\t66 3.4.3 用关系规范化理论对关系 模型进行优化\t67 3.5 数据库的物理设计\t68 3.5.1 数据库的物理结构确定\t68 3.5.2 物理结构的评价\t70 3.6 数据库的实施和运行维护\t70 3.6.1 数据库实际结构的建立\t70 3.6.2 装载数据\t70 3.6.3 应用程序开发测试\t71 3.6.4 数据库试运行\t71 3.6.5 数据库运行与维护\t71 小结\t72 习题\t73 第4章 实体-联系模型\t74 4.1 实体-联系模型概述\t74 4.1.1 实体集\t74 4.1.2 属性\t74 4.1.3 联系集\t76 4.2 约束\t77 4.2.1 映射基数\t77 4.2.2 参与约束\t77 4.3 实体-联系图\t77 4.4 扩展的实体-联系模型特性\t78 4.5 实体-联系设计\t80 4.5.1 E-R图设计\t80 4.5.2 用实体集还是用属性\t83 4.5.3 用实体集还是用联系集\t83 4.5.4 二元还是n元联系集\t84 4.6 数据建模的其他表示法及工具\t84 4.6.1 统一建模语言\t84 4.6.2 数据建模的其他方法\t90 小结\t93 习题\t94 第5章 规范化\t96 5.1 关系模式设计中的问题\t96 5.2 函数依赖\t99 5.2.1 函数依赖的定义\t99 5.2.2 Armstrong公理\t100 5.2.3 函数依赖与码的联系\t101 5.2.4 属性集的闭包\t102 5.2.5 FD推理规则的完备性\t103 5.2.6 FD集的最小依赖集\t103 5.3 模式分解\t104 5.3.1 模式分解问题\t105 5.3.2 无损分解\t105 5.3.3 保持函数依赖的分解\t108 5.3.4 模式分解与模式等价问题\t110 5.4 范式\t111 5.4.1 第一范式(1NF)\t112 5.4.2 第二范式(2NF)\t112 5.4.3 第三范式(3NF)\t113 5.4.4 BC范式(BCNF)\t114 5.5 多值函数依赖与4NF\t115 5.5.1 多值函数依赖\t115 5.5.2 4NF\t116 5.6 函数依赖与5NF\t117 小结\t117 习题\t118 第6章 基础SQL语言\t121 6.1 SQL概述\t121 6.1.1 SQL标准与历史\t121 6.1.2 SQL标准数据类型及SQL标准 内置函数\t122 6.1.3 SQL的功能与特点\t123 6.2 数据库基本结构定义\t124 6.2.1 数据库的创建、修改与删除\t125 6.2.2 基本表的定义、修改与删除\t128 6.3 数据查询语句基本结构\t130 6.3.1 查询语句概述\t130 6.3.2 基本查询结构\t131 6.3.3 查询语句中使用运算符\t133 6.3.4 用聚集函数统计查询结果\t137 6.3.5 INTO子句\t139 6.3.6 GROUP BY子句\t140 6.3.7 HAVING子句\t140 6.3.8 ORDER BY子句\t141 6.3.9 用TOP谓词限制结果集\t141 6.4 集合运算\t143 6.4.1 并运算\t143 6.4.2 交/差运算\t143 6.4.3 集合运算的使用原则\t144 6.5 连接查询\t145 6.5.1 连接概述\t145 6.5.2 内连接\t145 6.5.3 自连接\t146 6.5.4 外连接\t147 6.6 嵌套查询\t148 6.6.1 嵌套查询基本概念\t148 6.6.2 非相关子查询和相关子查询\t149 6.6.3 IN和NOT IN运算符\t150 6.6.4 ANY和ALL运算符\t151 6.6.5 EXISTS和NOT EXISTS 运算符\t152 6.7 数据修改\t153 6.7.1 数据插入\t153 6.7.2 数据更新\t155 6.7.3 数据删除\t155 6.8 视图\t156 6.8.1 视图的定义\t156 6.8.2 查询中使用视图\t157 6.8.3 视图的更新\t157 6.8.4 视图的作用\t158 6.9 完整性约束\t159 6.9.1 完整性约束的定义\t159 6.9.2 PRIMARY KEY约束\t159 6.9.3 UNIQUE约束\t159 6.9.4 NOT NULL约束\t160 6.9.5 CHECK约束\t160 6.9.6 FOREIGN KEY约束\t161 6.9.7 域约束\t163 6.9.8 断言\t164 6.9.9 完整性约束的修改\t164 6.9.10 完整性约束的验证\t166 习题\t168 第7章 高级SQL语言\t171 7.1 游标\t171 7.1.1 游标的基本概念\t171 7.1.2 游标种类\t172 7.1.3 游标操作\t173 7.2 存储过程\t176 7.2.1 存储过程的概念\t176 7.2.2 存储过程的类型\t177 7.2.3 存储过程的操作\t178 7.3 函数\t181 7.3.1 SQL中函数的概念\t181 7.3.2 函数的类型\t182 7.3.3 函数的操作\t182 7.4 触发器\t187 7.4.1 触发器的概念和作用\t187 7.4.2 触发器的分类\t188 7.4.3 触发器的工作原理\t188 7.4.4 创建和使用DML触发器\t189 7.4.5 创建和使用DDL触发器\t192 7.5 递归查询\t193 7.5.1 递归查询基本概念\t193 7.5.2 递归查询的操作\t193 7.6 记录排序与分页\t195 习题\t196 第8章 数据库访问接口与应用程序开发\t197 8.1 数据库连接访问\t197 8.1.1 ADO\t198 8.1.2 ODBC\t199 8.1.3 JDBC\t201 8.2 XML数据交换\t206 8.2.1 XML数据模型\t207 8.2.2 XML数据库\t207 8.2.3 XML数据交换\t209 8.3 数据库应用程序开发\t213 8.3.1 数据库应用程序架构\t213 8.3.2 数据访问层和对象关系映射 (ORM)\t215 8.3.3 数据展现:查询和报表\t216 8.3.4 C/S应用程序开发\t217 8.3.5 B/S应用程序开发\t217 习题\t218 第9章 数据存储和查询处理与优化\t219 9.1 数据存储\t219 9.1.1 物理存储介质概述\t219 9.1.2 文件组织\t221 9.1.3 RAID\t223 9.2 索引\t227 9.2.1 B+树索引\t229 9.2.2 散列索引\t233 9.2.3 位图索引\t233 9.3 查询处理及查询优化\t235 9.3.1 查询处理\t235 9.3.2 关系代数运算的执行\t236 9.3.3 查询优化技术\t238 9.3.4 代数优化\t241 9.3.5 物理优化\t243 习题\t245 第10章 事务与并发控制\t246 10.1 事务的概念与性质\t246 10.2 事务的并发执行可能引起的 问题\t249 10.3 可串行化\t251 10.3.1 串行调度\t251 10.3.2 可串行化调度\t252 10.3.3 可恢复性\t255 10.3.4 事务隔离性级别\t256 10.4 基于锁的并发控制协议\t257 10.4.1 封锁\t257 10.4.2 两段锁协议(2PL)\t259 10.4.3 锁的升级及更新锁\t260 10.5 活锁与死锁\t261 10.5.1 活锁\t261 10.5.2 死锁\t262 10.6 多粒度封锁\t264 习题\t266 第11章 故障恢复\t267 11.1 数据库恢复概述\t267 11.1.1 数据库恢复概述\t267 11.1.2 故障种类\t267 11.1.3 日志记录\t268 11.2 恢复与原子性\t269 11.2.1 事务管理器\t269 11.2.2 使用日志撤销和重做事务\t270 11.3 缓冲区管理\t275 11.3.1 缓冲区管理器结构\t275 11.3.2 缓冲区管理策略\t275 11.3.3 日志记录缓冲\t276 11.3.4 检查点\t277 11.4 恢复处理\t280 11.4.1 事务故障的恢复\t280 11.4.2 系统故障的恢复\t280 11.4.3 介质故障的恢复\t282 习题\t283 第12章 数据库安全\t284 12.1 数据库安全基础\t284 12.2 数据库安全性控制\t286 12.3 用户标识和鉴别\t287 12.4 自主访问控制\t288 12.4.1 权限类型\t289 12.4.2 授权及权限回收\t290 12.5 基于角色的访问控制\t290 12.6 强制访问控制\t291 12.7 安全审计\t292 12.8 其他数据库安全机制\t294 12.8.1 使用视图实现安全控制\t294 12.8.2 使用存储过程实现安全控制\t294 12.9 外部安全机制\t295 12.9.1 数据加密\t295 12.9.2 数字签名\t297 12.9.3 认证技术\t297 习题\t298 < |