数据库系统原理及应用

-
【作 者】李晓峰 李东
【I S B N 】978-7-5084-8294-1
【责任编辑】张玉玲
【适用读者群】本科
【出版时间】2011-02-10
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第1版第1次印刷
【页 数】
【千字数】624
【印 张】23
【定 价】¥42
【丛 书】普通高等院校“十二五”规划教材
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书从不同层次、角度,由浅入深地介绍数据库系统的原理和应用,吸取新思想、新技术,详细介绍数据库系统的基本概念、关系模型的运算理论、SQL语言和SQL Server 2008、规范化设计理论、数据库设计、数据保护等基本知识,并对目前正在发展的高级数据库技术作了介绍,强调内容的特色化与创新性。
本书本着突出理论知识的应用和实践能力的培养,基础理论以必需、够用为度,专业教学加强针对性和实用性等原则,共分三部分:基础篇、应用篇和高级篇。“基础篇”内容涉及数据库的基本概念、操作、模型;“应用篇” 结合SQL Server 2008和计算机实验签到系统实例介绍数据库管理和高级应用技术,达到理论与实践紧密结合;“高级篇”内容包括一些前沿技术,如“分布式数据库”、“面向对象数据库”。
本书内容循序渐进,深入浅出,概念清晰,条理性强,每一章都给出了大量的实例,并且每章后面附有大量习题,从各种不同角度帮助读者了解和掌握所学的知识点,完成全部知识体系的衔接。
本书可作为大学计算机及相关专业的本科教材,也可供从事计算机软件工作的科技人员、工程技术人员以及其他相关人员参阅。
覆盖的知识面广,既包括数据库理论,又包括数据库应用技术
提供大量实例分析,帮助读者理解相关知识点,提高实际应用能力
将数据库原理知识与实际数据库开发工具结合,提高综合实践与创新能力
根据数据库发展的过程与特点,从不同角度出发,凝炼出数据库发展的三条线索
突出应用型人才培养要求,对实用性强的内容有所侧重
数据库技术是计算机学科中比较活跃的一个分支,是高校计算机专业教学中一门重要的核心课程,已经成为计算机信息系统与应用系统的核心技术。随着数据库应用技术的发展,越来越多的软件开发人员希望了解并掌握数据库的开发和管理方法。数据库的应用为高效、精确地处理各种数据创造了条件。数据库的建设规模、数据库信息量的大小和使用频率,已成为衡量一个国家信息化程度的重要标志。
本书在内容编排上,由理论到实践、从技术基础到具体开发应用,将数据库原理知识与实际数据库开发工具结合在一起,旨在培养学习者提高综合实践与创新能力。本书根据数据库发展的过程与特点,从不同角度出发,凝炼出数据库发展的三条线索:数据模型经历了从层次型、网状型、关系型、对象关系型、面向对象型到网络型的演变过程;数据库查询语言经历了交互式、嵌入式、对象关系式、面向对象式等演变过程;数据库设计从实体联系图、对象联系图的发展过程,将全书内容提携起来,使得复杂内容条理化、清晰化,易于学生掌握。
本书突出理论知识的应用和实践能力的培养,由浅入深,并突出应用型人才培养要求,对实用性强的内容有所侧重,每一章都附有相应的习题,便于读者加深理解和巩固提高。
本书是作者多年从事数据库教学的经验和感受的总结,特点是覆盖的知识比较全面,既包括数据库理论,又包括数据库应用技术,并提供大量的实例分析,为读者理解相关知识点,提高实际能力提供了方便。
本书第1、3、6章由李晓峰、李东编写,第2和7章由翟霞、黄磊编写,第4和5章由吕志峰、孙海龙编写,第8章由张振蕊、李兰竹编写,第9章由姚路、杨丽丽编写,第10章由孙鹤、冯占伟编写,全书由李晓峰统稿。
值此本书付梓之际,首先向华东师范大学黄国兴教授表示感谢,他为审阅本书付出了艰辛的劳动并提出了很多宝贵意见,其次还要感谢哈尔滨工业大学李东教授参与了编写工作,最后感谢中国水利水电出版有关领导和编辑的大力支持和帮助。
在本书编写过程中,作者参考了大量的相关书籍和资料,在此对这些参考文献的作者表示感谢。
由于编者水平有限,书中难免存在错误及不当之处,敬请广大专家和读者批评指正,以便及时修订和补充。作者邮箱是mberse@126.com。
编 者
2010年11月
第一篇 基础篇
第1章 数据库系统概论 1
1.1 数据库系统基本概念 1
1.1.1 信息、数据与数据处理 1
1.1.2 数据库 2
1.1.3 数据库管理系统与管理信息系统 3
1.1.4 数据库系统 4
1.2 数据库技术的产生与发展 6
1.2.1 数据管理技术的发展 6
1.2.2 数据库系统的特点 9
1.3 数据模型 10
1.3.1 信息的三个世界 10
1.3.2 模型与数据模型 12
1.3.3 数据模型的基本组成 12
1.3.4 数据模型的分类 13
1.4 数据库系统的体系结构 15
1.4.1 数据库三级模式结构 16
1.4.2 数据库应用系统的体系结构 18
1.5 数据库系统研究领域 20
1.5.1 数据库技术、方法、理论 20
1.5.2 DBMS产品及工具 20
1.5.3 数据库技术与相关技术的融合 21
本章小结 21
习题一 22
第2章 关系数据库 23
2.1 关系数据库的基本概念 23
2.1.1 关系的数学定义 23
2.1.2 关系的性质 26
2.1.3 关系模式与关系数据库 27
2.2 关系数据库的数据模型 28
2.2.1 关系模型结构 28
2.2.2 关系模型的数据操作 29
2.2.3 关系完整性约束 30
2.3 关系代数 31
2.3.1 关系代数的传统集合运算 32
2.3.2 关系代数专门的关系运算 33
2.3.3 关系代数表达式应用举例 37
2.4 关系演算 37
2.4.1 元组关系演算 37
2.4.2 域关系演算 39
2.5 关系系统的查询优化技术 40
2.5.1 查询优化问题的提出 41
2.5.2 查询优化的一般策略 43
2.5.3 关系代数表达式的等价变换规则 43
2.5.4 关系表达式的优化算法 44
本章小结 47
习题二 48
第3章 关系数据库设计理论 50
3.1 关系模式设计问题 50
3.1.1 数据冗余与操作异常 50
3.1.2 冗余产生原因分析和问题解决思路 51
3.2 关系模式的规范化 52
3.2.1 函数依赖 52
3.2.2 码的形式定义 54
3.2.3 关系模式基础范式 55
3.2.4 多值依赖与第四范式 59
3.3 数据依赖的公理系统 62
3.3.1 Armstrong公理 62
3.3.2 属性集的闭包及其算法 63
3.3.3 候选码的求解理论和算法 65
3.3.4 函数依赖集的等价与覆盖 66
3.3.5 最小函数依赖集 66
3.4 关系模式的分解 68
3.4.1 模式分解的等价性 68
3.4.2 无损连接分解 69
3.4.3 保持依赖性分解 71
3.4.4 关系模式分解算法 73
3.5 规范化理论的应用 75
3.5.1 规范化的优缺点 75
3.5.2 反规范化设计 75
3.5.3 规范化设计与反规范化设计 76
3.5.4 规范化示例 76
本章小结 78
习题三 79
第二篇 应用篇
第4章 SQL Server 2008和关系数据库
标准语言SQL 81
4.1 SQL Server 2008概述 81
4.1.1 SQL Server 2008的发展历史 81
4.1.2 SQL Server 2008简介 82
4.1.3 SQL Server 2008的版本 83
4.1.4 SQL Server 2008的安装与配置 86
4.2 SQL Server 2008的管理工具 97
4.2.1 SQL Server 2008管理工具一览 97
4.2.2 SQL Server 2008 Management Studio 98
4.2.3 SQL Server 2008 配置管理器 100
4.3 SQL Server 2008的体系结构 101
4.3.1 逻辑结构 101
4.3.2 物理结构 102
4.4 关系数据库语言SQL 104
4.4.1 SQL的发展史 104
4.4.2 SQL的功能特点 105
4.4.3 SQL的基本组成 105
4.5 Transact-SQL的数据定义语言 107
4.5.1 数据库管理与使用 107
4.5.2 表的管理与使用 118
4.5.3 视图的管理与使用 126
4.5.4 索引的管理与使用 132
4.5.5 同义词的管理和使用 134
4.6 Transact-SQL的数据查询语言 135
4.6.1 SELECT的基本结构 136
4.6.2 简单查询 136
4.6.3 连接查询 144
4.6.4 子查询 147
4.6.5 集合查询 149
4.6.6 递归合并查询 150
4.7 Transact-SQL的数据操纵语言 152
4.7.1 数据插入 152
4.7.2 数据修改 153
4.7.3 数据删除 154
4.8 Transact-SQL的数据控制语言 155
4.8.1 数据控制的方法 155
4.8.2 权限的授予与收回 155
4.9 嵌入式SQL 157
4.9.1 嵌入式SQL的实现方式 158
4.9.2 嵌入式SQL语言的分类 158
4.9.3 嵌入式SQL和宿主语言之间的通信 159
4.9.4 嵌入式SQL的使用规定 160
4.9.5 嵌入式SQL的使用技术 160
4.9.6 嵌入式SQL应用实例 163
本章小结 164
习题四 164
第5章 SQL Server 2008高级应用 167
5.1 Transact-SQL程序设计 167
5.1.1 Transact-SQL程序结构 167
5.1.2 Transact-SQL程序的批处理 168
5.1.3 系统数据类型 168
5.1.4 常量与变量 171
5.1.5 注释符与运算符 173
5.1.6 标准(库)函数 174
5.1.7 流程控制语句 175
5.1.8 常用命令 179
5.2 存储过程 180
5.2.1 存储过程的概念 181
5.2.2 存储过程的优点 181
5.2.3 存储过程的分类 181
5.2.4 存储过程的建立 182
5.2.5 执行存储过程 184
5.2.6 修改存储过程 185
5.2.7 删除存储过程 186
5.3 触发器 187
5.3.1 触发器的概念 187
5.3.2 触发器的作用 187
5.3.3 触发器的种类 188
5.3.4 DML触发器的分类 188
5.3.5 DML触发器的工作原理 188
5.3.6 设计DML触发器的注意事项
及技巧 189
5.3.7 创建DML触发器 191
5.3.8 创建Instead Of触发器 194
5.3.9 查看DML触发器 195
5.3.10 修改DML触发器 196
5.3.11 删除DML触发器 197
5.3.12 DDL触发器 197
5.3.13 存储过程和触发器的区别 200
5.4 用户自定义函数 200
5.4.1 创建用户自定义函数 201
5.4.2 修改和删除用户自定义函数 204
本章小结 204
习题五 204
第6章 数据库设计 207
6.1 数据库设计概述 207
6.1.1 数据库设计的任务、特点和方法 207
6.1.2 数据库设计过程 209
6.2 需求分析 211
6.2.1 需求分析的任务 211
6.2.2 需求分析的步骤 211
6.2.3 数据流图 213
6.2.4 数据字典 213
6.3 概念设计 215
6.3.1 E-R模型 216
6.3.2 概念设计的方法和步骤 220
6.3.3 数据抽象与局部概念模式设计 220
6.3.4 全局概念模式设计 222
6.4 逻辑设计 224
6.4.1 逻辑设计的步骤 224
6.4.2 E-R模型向关系模型的转换 224
6.4.3 模型的优化 228
6.4.4 设计用户外模式 230
6.4.5 E-R模型实例分析 230
6.5 物理设计 233
6.5.1 物理设计的要求和内容 233
6.5.2 存取方法 234
6.5.3 存储结构 235
6.5.4 性能评价 236
6.6 数据库的实施 236
6.6.1 数据库结构建立 236
6.6.2 数据载入 236
6.6.3 编写、调试应用程序 237
6.6.4 数据库试运行 237
6.6.5 整理文档 237
6.7 数据库的运行维护 238
6.8 数据库应用系统设计实例 239
6.8.1 系统需求分析 239
6.8.2 系统概念设计 242
6.8.3 系统的逻辑设计 243
6.8.4 系统物理设计 247
本章小结 251
习题六 252
第7章 数据库安全性与完整性 254
7.1 数据安全与保护概述 254
7.2 数据库的安全性 255
7.2.1 对数据库安全的威胁 255
7.2.2 数据库安全性级别 255
7.2.3 数据库安全性控制 256
7.2.4 SQL Server的安全性控制 259
7.3 数据库的完整性 275
7.3.1 完整性约束条件 276
7.3.2 完整性控制 278
7.3.3 SQL Server完整性的实现 280
本章小结 286
习题七 286
第8章 数据库事务管理 288
8.1 事务与事务管理 288
8.1.1 事务的概念及ACID特性 288
8.1.2 事务的基本操作与活动状态 290
8.2 并发控制 291
8.2.1 事务的并发执行 291
8.2.2 并发操作引起的不一致问题 291
8.2.3 封锁与封锁协议 293
8.2.4 活锁与死锁 295
8.2.5 并发调度的可串行性 297
8.2.6 两段锁协议 299
8.2.7 SQL Server并发控制的实现 301
8.3 数据库恢复技术 305
8.3.1 数据库故障分类 305
8.3.2 数据库恢复实现技术 306
8.3.3 SQL Server数据恢复机制的实现 310
本章小结 322
习题八 322
第三篇 高级篇
第9章 分布式数据库 324
9.1 分布式数据库简介 324
9.1.1 分布式数据库的特点 324
9.1.2 分布式数据库的优缺点 325
9.1.3 分布式数据库的分类 326
9.2 分布式数据库的体系结构 326
9.3 分布式数据库管理系统 329
9.4 分布式数据存储 330
9.4.1 数据分片 330
9.4.2 数据分配 332
9.5 分布式数据库的组成 333
9.6 分布式查询 333
9.7 分布式数据库的发展及应用趋势 335
本章小结 336
习题九 337
第10章 对象数据库 338
10.1 面向对象数据库 338
10.1.1 面向对象数据模型 339
10.1.2 面向对象数据库管理系统 339
10.1.3 面向对象数据库系统 340
10.1.4 面向对象技术与数据库技术相结合的多种方法 340
10.1.5 面向对象数据库的不足 341
10.2 对象关系数据库 341
10.2.1 关系模型扩充—后关系模型 342
10.2.2 后关系模型扩充—对象关系
数据模型 345
10.3 对象关系数据库管理系统 348
10.4 对象关系数据库的定义语言 350
10.4.1 对象关系数据库模型的定义 350
10.4.2 数据类型定义 350
10.4.3 继承性定义 352
10.4.4 引用类型定义 353
10.5 对象关系数据库的数据查询 356
10.5.1 嵌套与元组变量设置 356
10.5.2 路径表达式 356
10.5.3 复合值创建和查询 357
10.5.4 面向对象数据库与对象关系
数据库的比较 358
本章小结 358
习题十 359
参考文献 360
- Python数据库编程 [主编 殷树友 邢 翀]
- SQL Server 2019数据库实战教程 [主编 岳付强 曾陈萍 唐承佳]
- MySQL数据库技术项目化教程——基于OBE理念 [主编 刘崇巍 庞金龙]
- MySQL数据库应用项目化教程 [主编 代恒 王明超]
- 数据库原理与实践(MySQL版) [杨俊杰 刘忠艳]
- MySQL数据库项目式教程 [陈亚峰]
- 数据库技术与应用实践教程(SQL Server 2019) [主 编 严晖 周肆清]
- 数据库技术与应用(SQL Server 2019) [主编 严晖 刘卫国]
- 数据库原理及应用SQL Server 2014(微课版) [主 编 赵德福]
- MySQL数据库项目化教程(第二版) [主编 郑小蓉]
- 数据库原理及应用(MySQL版) [瞿英 裴祥喜 王玉恒]
- 数据库技术与应用(SQL Server 2019) [主 编 沙有闯]
- 数据库系统工程师真题精析与命题密卷 [钟志宏]
- 数据库原理与应用——基于SQL Server 2016 [主编 彭浩 黄胜 邹竞]
- 数据库系统工程师5天修炼 [钟志宏]
- Access数据库基础教程实验指导与习题集 [主 编 饶拱维 杨贵茂 吴华光]
- Access 数据库基础教程 [主编 饶拱维 杨贵茂 郭其标]
- MySQL数据库项目化教程 [主编 郑小蓉 段萍]
- C#数据库编程技术 [主编 顾家铭]
- 数据库原理及应用(MySQL版) [主编 高亮 韩玉民]
- 数据库原理 [主编 杨俊杰 张玮]
- 数据库原理与技术(第三版)实验指导 [程传庆]
- 数据库技术与应用(SQL Server 2008版)(第二版) [主编 严晖 王小玲]
- 数据库技术与应用实践教程(SQL Server 2008)(第二版) [主编 严晖 周肆清]
- 数据库原理与SQL语言 [主编 余恒芳 汪晓青]
- 数据库原理与技术(第三版) [程传慧]
- MySQL数据库开发实战 [肖睿 訾永所 侯小毛]
- Access 2010数据库应用教程(第二版) [主编 李亚]
- Access 2010数据库实用教程 [主编 张明 宣继涛]
- 数据库应用 [主编 肖睿 于继武]