数据库系统 设计,实现与管理(基础篇)

背景

第1章    数据库简介

    1.1    引言

    1.2    传统的基于文件的系统

        1.2.1    基于文件的方法

        1.2.2    基于文件方法的局限性

    1.3    数据库方法

        1.3.1    数据库

        1.3.2    数据库管理系统(DBMS)

        1.3.3    (数据库)应用程序

        1.3.4    DBMS环境的组成部分

        1.3.5    数据库设计:范型改变

    1.4    数据库环境中的各种角色

        1.4.1    数据管理员和数据库管理员

        1.4.2    数据库设计人员

        1.4.3    应用开发人员

        1.4.4    终端用户

    1.5    数据库管理系统的历史

    1.6    DBMS的优点和缺点

    本章小结    思考题    习题    扩展阅读

第2章    数据库环境

    2.1    ANSI-SPARC三层体系结构

        2.1.1    外部层

        2.1.2    概念层

        2.1.3    内部层

        2.1.4    模式,映射和实例

        2.1.5    数据独立性

    2.2    数据库语言

        2.2.1    数据定义语言(DDL)

        2.2.2    数据操作语言(DML)

        2.2.3    第四代语言

    2.3    数据建模和概念建模

        2.3.1    基于对象的数据模型

        2.3.2    基于记录的数据模型

        2.3.3    物理数据模型

        2.3.4    概念建模

    2.4    DBMS的功能

    本章小结    思考题    习题    扩展阅读

第3章    数据库的结构与Web

    3.1    多用户DBMS结构

        3.1.1    远程处理

        3.1.2    文件服务器结构

        3.1.3    传统的两层客户-服务器结构

        3.1.4    三层客户-服务器结构

        3.1.5    N层客户-服务器结构

        3.1.6    中间件

        3.1.7    事务处理监视器

    3.2    Web服务与面向服务的结构

        3.2.1    Web服务

        3.2.2    面向服务的结构(SOA)

    3.3    分布式DBMS

    3.4    数据仓库

    3.5    云计算

        3.5.1    云计算的好处与风险

        3.5.2    基于云的数据库方案

    3.6    DBMS的组件

    3.7    Oracle的体系结构

        3.7.1    Oracle的逻辑数据库结构

        3.7.2    Oracle的物理数据库结构

    本章小结    思考题    习题    扩展阅读

                    第二部分            关系模型与语言

第4章    关系模型

    4.1    关系模型简史

    4.2    基本术语

        4.2.1    关系数据结构

        4.2.2    数学中的关系

        4.2.3    数据库中的关系

        4.2.4    关系的性质

        4.2.5    关系关键字

        4.2.6    关系数据库模式的表示

    4.3    完整性约束

        4.3.1    空

        4.3.2    实体完整性

        4.3.3    引用完整性

        4.3.4    一般性约束

    4.4    视图

        4.4.1    术语

        4.4.2    视图的用途

        4.4.3    视图的更新

    本章小结    思考题    习题    扩展阅读

第5章    关系代数与关系演算

    5.1    关系代数

        5.1.1    一元运算

        5.1.2    集合运算

        5.1.3    连接运算

        5.1.4    除法运算

        5.1.5    聚集运算和分组运算

        5.1.6    关系代数运算小结

    5.2    关系演算

        5.2.1    元组关系演算

        5.2.2    域关系演算

    本章小结    思考题    习题    扩展阅读

第6章    SQL:数据操作

    6.1    SQL简介

        6.1.1    SQL的目标

        6.1.2    SQL的历史

        6.1.3    SQL的重要性

        6.1.4    术语

    6.2    书写SQL命令

    6.3    数据操作

        6.3.1    简单查询

        6.3.2    查询结果排序(ORDER BY子句)

        6.3.3    使用SQL聚集函数

        6.3.4    查询结果分组(GROUP BY子句)

        6.3.5    子查询

        6.3.6    ANY和ALL

        6.3.7    多表查询

        6.3.8    EXISTS和NOT EXISTS

        6.3.9    合并结果表(UNION,INTERSECT和EXCEPT)

        6.3.10    数据库更新

    本章小结    思考题    习题

第7章    SQL:数据定义

    7.1    ISO SQL数据类型

        7.1.1    SQL标识符

        7.1.2    SQL标量数据类型

    7.2    完整性增强特性

        7.2.1    必须有值的数据

        7.2.2    域约束

        7.2.3    实体完整性

        7.2.4    引用完整性

        7.2.5    一般性约束

    7.3    数据定义

        7.3.1    创建数据库

        7.3.2    创建表(CREATE TABLE)

        7.3.3    修改表定义(ALTER TABLE)

        7.3.4    删除表(DROP TABLE)

        7.3.5    创建索引(CREATE INDEX)

        7.3.6    删除索引(DROP INDEX)

    7.4    视图

        7.4.1    创建视图(CREATE VIEW)

        7.4.2    删除视图(DROP VIEW)

        7.4.3    视图分解

        7.4.4    视图的局限性

        7.4.5    视图的可更新性

        7.4.6    WITH CHECK OPTION

        7.4.7    视图的优缺点

        7.4.8    视图物化

    7.5    事务

    7.6    自主访问控制

        7.6.1    授予其他用户权限(GRANT)

        7.6.2    撤销用户权限(REVOKE)

    本章小结    思考题    习题    扩展阅读

第8章    高级SQL

    8.1    SQL编程语言

        8.1.1    声明

        8.1.2    赋值

        8.1.3    控制语句

        8.1.4    PL/SQL的异常

        8.1.5    PL/SQL的游标

    8.2    子程序,存储过程,函数和包

    8.3    触发器

    8.4    递归

    本章小结    思考题    习题    扩展阅读

第9章    对象关系DBMS

    9.1    高级数据库应用

    9.2    RDBMS的缺点

    9.3    在关系数据库中存储对象

        9.3.1    将类映射为关系

        9.3.2    访问关系数据库中的对象

    9.4    对象关系数据库系统简介

    9.5    SQL:2011

        9.5.1    行类型

        9.5.2    用户自定义类型

        9.5.3    子类型和超类型

        9.5.4    用户自定义例程

        9.5.5    多态性

        9.5.6    引用类型和对象标识

        9.5.7    创建表

        9.5.8    数据查询

        9.5.9    集类型

        9.5.10    类型视图

        9.5.11    持久化存储模块

        9.5.12    触发器

        9.5.13    大对象

        9.5.14    递归

    9.6    Oracle中面向对象的扩展

        9.6.1    用户自定义数据类型

        9.6.2    操作对象表

        9.6.3    对象视图

        9.6.4    权限

    本章小结    思考题    习题    扩展阅读

                    第三部分            数据库分析与设计

第10章    数据库系统开发生命周期

    10.1    信息系统生命周期

    10.2    数据库系统开发生命周期

    10.3    数据库规划

    10.4    系统定义

    10.5    需求收集与分析

        10.5.1    集中式方法

        10.5.2    视图集成方法

    10.6    数据库设计

        10.6.1    数据库设计方法

        10.6.2    数据建模

        10.6.3    数据库设计的阶段划分

    10.7    DBMS选型

    10.8    应用程序设计

        10.8.1    事务设计

        10.8.2    用户界面设计指南

    10.9    建立原型系统

    10.10    实现

    10.11    数据转换与加载

    10.12    测试

    10.13    运行维护

    10.14    CASE工具

    本章小结    思考题    习题    扩展阅读

第11章    数据库分析与DreamHome案例研究

    11.1    使用实况发现技术的时机

    11.2    收集实况的类型

    11.3    实况发现技术

        11.3.1    分析文档资料

        11.3.2    面谈

        11.3.3    观察企业的运作

        11.3.4    研究

        11.3.5    问卷调查

    11.4    使用实况发现技术的实例

        11.4.1    DreamHome案例研究——概述

        11.4.2    DreamHome案例研究——数据库规划

        11.4.3    DreamHome案例研究——系统定义

        11.4.4    DreamHome案例研究——需求收集与分析

        11.4.5    DreamHome案例研究——数据库设计

    本章小结    思考题    习题    扩展阅读

第12章    实体-联系建模

    12.1    实体类型

    12.2    联系类型

        12.2.1    联系类型的度

        12.2.2    递归联系

    12.3    属性

        12.3.1    简单属性和组合属性

        12.3.2    单值属性和多值属性

        12.3.3    导出属性

        12.3.4    关键字

    12.4    强实体类型与弱实体类型

    12.5    联系的属性

    12.6    结构化约束

        12.6.1    一对一(1:1)联系

        12.6.2    一对多(1:*)联系

        12.6.3    多对多(*:*)联系

        12.6.4    复杂联系的多重性

        12.6.5    基数约束和参与性约束

    12.7    ER模型的问题

        12.7.1    扇形陷阱

        12.7.2    断层陷阱

    本章小结    思考题    习题    扩展阅读

第13章    增强的实体-联系建模

    13.1    特殊化/泛化

        13.1.1    超类和子类

        13.1.2    超类/子类联系

        13.1.3    属性的继承

        13.1.4    特殊化过程

        13.1.5    泛化过程

        13.1.6    特殊化/泛化的约束

        13.1.7    基于DreamHome案例研究的Branch视图特殊化/泛化建模示例

    13.2    聚合

    13.3    组合

    本章小结    思考题    习题    扩展阅读

第14章    规范化

    14.1    规范化的目的

    14.2    规范化对数据库设计的支持

    14.3    数据冗余与更新异常

        14.3.1    插入异常

        14.3.2    删除异常

        14.3.3    修改异常

    14.4    函数依赖

        14.4.1    函数依赖的特征

        14.4.2    识别函数依赖

        14.4.3    利用函数依赖确定主关键字

    14.5    规范化过程

    14.6    第一范式(1NF)

    14.7    第二范式(2NF)

    14.8    第三范式(3NF)

    14.9    2NF和3NF的一般化定义

    本章小结    思考题    习题    扩展阅读

第15章    进一步规范化

    15.1    函数依赖的进一步讨论

        15.1.1    函数依赖的推导规则

        15.1.2    最小函数依赖集

    15.2    Boyce-Codd范式(BCNF)

    15.3    规范化到BCNF的过程小结

    15.4    第四范式(4NF)

        15.4.1    多值依赖

        15.4.2    第四范式的定义

    15.5    第五范式(5NF)

        15.5.1    无损连接依赖

        15.5.2    第五范式的定义

    本章小结    思考题    习题    扩展阅读

                    第四部分            方法学

第16章    方法学——概念数据库设计

    16.1    数据库设计方法学简介

        16.1.1    什么是设计方法学

        16.1.2    概念,逻辑和物理数据库设计

        16.1.3    成功设计数据库的关键因素

    16.2    数据库设计方法学概述

    16.3    概念数据库设计方法学

        步骤1    建立概念数据模型

    本章小结    思考题    习题

第17章    方法学——关系模型的逻辑数据库设计

    17.2    关系模型的逻辑数据库设计方法学

        步骤2    建立逻辑数据模型

    本章小结    思考题    习题    扩展阅读

第18章    方法学——关系数据库的物理数据库设计

    18.1    逻辑数据库设计与物理数据库设计的比较

    18.2    物理数据库设计方法学概述

    18.3    关系数据库的物理数据库设计方法学

        步骤3    转换逻辑数据模型以适应目标DBMS

        步骤4    设计文件组织方法和索引

        步骤5    设计用户视图

        步骤6    设计安全机制

    本章小结    思考题    习题

第19章    方法学——运行时系统的监控与调优

    19.1    逆规范化与可控冗余的引入

        步骤7    考虑引入可控冗余

    19.2    监控系统以提高性能

        步骤8    监控系统和系统调优

    本章小结    思考题    习题    扩展阅读

                    第五部分            可选的数据库专题

第20章    安全与管理

    20.1    数据库安全

    20.2    对策——基于计算机的控制

        20.2.1    授权

        20.2.2    访问控制

        20.2.3    视图

        20.2.4    备份和恢复

        20.2.5    完整性

        20.2.6    加密

        20.2.7    RAID(独立磁盘冗余阵列)

    20.3    Microsoft Office Access DBMS的安全机制

    20.4    Oracle DBMS的安全机制

    20.5    DBMS与Web安全

        20.5.1    代理服务器

        20.5.2    防火墙

        20.5.3    报文摘要算法和数字签名

        20.5.4    数字证书

        20.5.5    Kerberos

        20.5.6    安全套接字和安全HTTP

        20.5.7    安全电子交易和安全交易技术

        20.5.8    Java安全

        20.5.9    AcitiveX安全

    20.6    数据管理与数据库管理

        20.6.1    数据管理

        20.6.2    数据库管理

        20.6.3    数据管理与数据库管理的比较

    本章小结    思考题    习题    扩展阅读

第21章    数据管理中的职业,法律与道德问题

    21.1    定义IT中的法律与道德问题

        21.1.1    定义IT中的道德规范

        21.1.2    道德行为与合法行为的差别

        21.1.3    IT中的道德行为

    21.2    若干法规及其对IT功能的影响

        21.2.1    美国证券交易委员会(SEC)推出的规制国家市场体系(NMS)

        21.2.2    萨班斯-奥克斯利法案,COBIT和COSO

        21.2.3    健康保险流通和责任法案(HIPAA)

        21.2.4    欧盟数据保护法令1995

        21.2.5    英国数据保护法令(DPA)1998

        21.2.6    信息访问法规

        21.2.7    国际银行业——巴塞尔II协议

    21.3    建立守法,道德的数据管理文化

        21.3.1    制定本组织内关于法律和道德行为的政策

        21.3.2    行业组织和伦理守则

        21.3.3    制定DreamHome组织内部关于法律和道德行为的政策

    21.4    知识产权

        21.4.1    专利

        21.4.2    版权

        21.4.3    (注册)商标

        21.4.4    软件的知识产权问题

        21.4.5    数据的知识产权问题

    本章小结    思考题    习题    扩展阅读

第22章    事务管理

    22.1    支持事务处理

        22.1.1    事务的性质

        22.1.2    数据库体系结构

    22.2    并发控制

        22.2.1    并发控制的必要性

        22.2.2    可串行性与可恢复性

        22.2.3    加锁方法

        22.2.4    死锁

        22.2.5    时间戳方法

        22.2.6    多版本时间戳排序

        22.2.7    乐观技术

        22.2.8    数据项的粒度

    22.3    数据库恢复

        22.3.1    恢复的必要性

        22.3.2    事务和恢复

        22.3.3    恢复机制

        22.3.4    恢复技术

        22.3.5    分布式DBMS的恢复

    22.4    高级事务模型

        22.4.1    嵌套事务模型

        22.4.2    Saga

        22.4.3    多级事务模型

        22.4.4    动态重构

        22.4.5    工作流模型

    22.5    Oracle中的并发控制与恢复

        22.5.1    Oracle的隔离级别

        22.5.2    多版本读一致性

        22.5.3    死锁检测

        22.5.4    备份和恢复

    本章小结    思考题    习题    扩展阅读

第23章    查询处理

    23.1    查询处理概述

    23.2    查询解析

    23.3    查询优化的启发式方法

        23.3.1    关系代数运算的转换规则

        23.3.2    启发式处理策略

    23.4    关系代数运算的代价估算

        23.4.1    数据库的统计信息

        23.4.2    选择运算

        23.4.3    连接运算

        23.4.4    投影运算

        23.4.5    关系代数的集合运算

    23.5    其他可选的执行策略

        23.5.1    流水线

        23.5.2    线性树

        23.5.3    物理算子和执行策略

        23.5.4    缩小搜索空间

        23.5.5    枚举左深树

        23.5.6    语义查询优化

        23.5.7    其他查询优化方法

        23.5.8    分布式查询优化

    23.6    查询处理与优化

    23.7    Oracle的查询优化

        23.7.1    基于规则和基于代价的优化

        23.7.2    柱状图

        23.7.3    查看执行计划

    本章小结    思考题    习题    扩展阅读

                    附录

附录A    DreamHome案例研究的用户需求说明

附录B    其他案例研究

附录C    可选的ER建模表示法

附录D    关系数据库设计方法学总结

附录E    轻量级RDBMS:Pyrrho简介

                在线资源

附录F    文件组织和索引

附录G    何时可将DBMS视为关系型

附录H    商品化DBMS:Access和Oracle

附录I    程序式SQL

附录J    估算磁盘空间的需求

附录K    面向对象概念介绍

附录L    Web脚本示例

附录M    举例查询语言(QBE)

附录N    第三代数据库宣言

附录O    Postgres——早期的ORDBMS

参考文献

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容