目 录 1
第一章引论 1
§1.1计算机和数据库 1
§1.2数据库设计过程的历史沿革 2
§1.3数据库的直接设计过程 3
§1.4分阶段设计过程 3
§1.5分析和设计的工具 4
§1.6数据库需求的说明和设计 6
§1.7数据库的技术设计 6
§1.8数据库设计的技术 7
§1.9本书的结构 8
1.9.1数据分析 8
1.9.2实现模型 8
1.9.3习题 9
第二章关系模型 10
§2.1引言 10
§2.2关系模型的历史回顾 10
§2.3关系模型的基本结构 10
2.3.1术语 12
2.3.2一致性 14
§2.4函数依赖 17
§2.5范式 18
2.5.1举例 19
2.5.2 BC范式 20
§2.6函数依赖和关系设计 21
2.6.1函数依赖的特性 21
2.6.2极小化算法 23
§2.7关系语言 24
2.7.1关系演算 24
2.7.3 SQL 26
2.7.2 QUEL 26
2.7.4 关系代数 30
§2.8本章小结 32
习 题 33
第三章关系的设计 39
§3.1引言 39
§3.2泛关系假设 39
§3.3关系设计准则 42
3.3.1满足可表述准则 42
3.3.3无损分解的条件 44
3.3.4冗余性准则 44
3.3.2无损分解 44
§3.4关系设计过程 45
§3.5分解 45
3.5.1简单分解算法 45
3.5.2简单分解算法的局限性 47
3.5.3多值依赖 49
3.5.4多值依赖的关系属性相关性 51
3.5.5第四范式 51
3.5.6分解算法2 51
3.5.7多值依赖和函数依赖 53
3.5.8分解算法的一些复杂问题 54
§3.6合成 55
3.6.1 函数依赖的语义 55
3.6.2合成算法 56
§3.7关系理论的最新进展 60
§3.8本章小结 61
习题 62
第四章数据分析中的语法设计及语义设计问题 64
§4.1引言 64
§4.2系统分析中的关系模型 64
§4.4关系模型的扩充 67
§4.3基于记录的数据模型 67
§4.5语义模型 68
§4.6语义模型对组织的模型化 69
4.6.1语义模型 69
4.6.2语义模型的表示 70
§4.7本章小结 71
习题 72
第五章语义模型Ⅰ——实体及联系 73
§5.1引言 73
§5.2实体—联系模型 73
5.2.2 E-R模型的图形表示 74
5.2.1实体集和联系集 74
5.2.3多值属性 75
5.2.4非函数联系 75
5.2.5标识符 76
5.2.6使用E-R模型进行模型化 78
§5.3实体、联系及关系 79
§5.4实体和联系的抉择 81
§5.5实体间的依赖 82
5.5.1使用组合码的问题 82
§5.6多值联系 84
5.5.2组合码的错误使用 84
§5.7二元联系和n元联系 87
§5.8实体模型 91
§5.9联系的不可表达性 91
§5.10关系的最小化 92
§5.11本章小结 92
习题 92
第六章语义模型Ⅱ——作用及类型 95
§6.1 引言 95
§6.2递归联系 96
§6.3作用模型 98
6.3.1模型化过程中作用的特性 99
63.2作用概念的其它优点 101
6.3.3非同构性 101
6.3.4非同构及函数依赖 103
6.3.5模型化过程中作用的结构 103
6.3.6作用的标识符和作用的结构 105
6.4.2同质作用集 107
6.4.3异质作用集 107
6.4.1作用结构与函数依赖 107
§6.4作用、源及关系 107
6.4.4简化方法 111
§6.5实体类型 113
6.5.1 实体类型的模型化 114
6.5.2 关系和异质类型集 115
6.5.3简化方法 118
§6.6聚合客体 118
§6.7实体类型和聚合客体的组合 121
§6.8本章小结 122
习题 123
第七章语义模型化过程的统一及问题 129
§7.1引言 129
§7.2聚合和归纳 130
§7.3二元模型 134
§7.4函数模型 137
§7.5本章小结 138
习题 138
第八章数据库说明 139
§8.1引言 139
§8.2转化方法 140
§8.3语义模型的规范化 141
§8.4 “规范化”的语义模型到记录说明 143
8.4.1同质作用的逻辑结构 144
8.4.2异质强制作用 146
8.4.3异质选择作用 148
8.4.4关于作用转化和类型转化的说明 148
§8.5关系模型转化为逻辑记录结构 149
§8.6逻辑记录结构的最小化(MLRS) 150
§8.7存取需求说明 150
8.7.1存取路径 150
8.7.2伪码的使用 152
§8.8量化数据说明 155
§8.9本章小结 156
习题 156
第九章实现模型Ⅰ——文件结构 157
§9.1引言 157
§9.2实现模型 159
9.2.1层次总体结构 160
9.2.2层次间映射的产生 163
9.2.3分层结构的作用 164
§9.3物理记录界面 164
9.3.1磁盘传送的存取方法软件 165
9.3.3页面 166
9.3.4可变长记录 166
9.3.2其它一些物理界面 166
9.3.5可变长物理记录 168
9.3.6多缓冲区 169
9.3.7物理界面对设计的影响 169
§9.4逻辑记录存取 169
§9.5顺序存取 170
§9.6直接存取 172
9.6.2索引实现 173
9.6.1散列存取方法 173
9.6.3 B树 177
9.6.4各种直接存取方法的比较 180
§9.7多索引存取 180
§9.8索引顺序存取方法 181
§9.9链结文件 182
9.9.1符号指引元 182
9.9.2逻辑记录指引元 183
§9.10 COBOL语言的存取方法 184
9.10.2索引顺序文件组织 185
9.10.1顺序文件组织 185
9.10.3相对文件组织 187
§9.11本章小结 188
习题 189
第十章实现模型Ⅱ——数据库管理系统 191
§10.1 引言 191
§10.2自然的用户界面 191
§10.3用户视图 193
§10.4数据独立性 193
§10.5 DBMS的用户界面软件 195
10.6.1三层次结构 198
§10.6 DBMS的结构 198
10.6.2模式—子模式结构 200
§10.7数据库的操作环境 200
10.7.1操作环境的类型 201
10.7.2处理方式 201
§10.8支持多用户环境的数据库功能 204
10.8.1数据库的完整性 204
10.8.2恢复 206
10.8.3数据库的安全性 206
10.8.4数据库的分布 207
10.8.5数据字典 209
10.8.6 DBMS系统软件的典型结构 210
§10.9本章小结 211
习题 211
第十一章关系数据库管理系统 212
§11.1引言 212
§11.2 System R 213
11.2.1 SQL语言 213
11.2.3数据库的赋值与更新 214
11.2.2数据库定义 214
11.2.4修改数据库定义 215
11.2.5定义用户视图 215
11.2.6 嵌入式SQL 216
11.2.7实现 218
§11.3 QBE(Query—By—Example) 221
11.3.1条件检索 221
11.3.2多个关系的检索 223
11.3.3逆条件 224
11.3.4函数 225
11.3.5集合比较 225
11.3.6插入、删除、更新 226
11.3.7数据库定义的建立和修改 227
§11.4个人计算机系统 228
11.4.1用户界面 228
11.4.2个人计算机数据库的使用 228
11.4.3某些更高级的功能 230
§11.5本章小结 231
习题 231
§12.2网状模型 233
§12.1引言 233
第十二章网状数据模型 233
§12.3网状模型的实现 237
§12.4 DBTG实现方法 242
12.4.1 DBTG模式 244
12.4.2域 244
12.4.3记录条目 245
12.4.4 系条目 247
12.4.5 DBTG网状数据库的存取 253
12.4.6子模式 259
习题 261
§12.5本章小结 261
第十三章层次数据库管理系统 267
§13.1引言 267
§13.2层次模型 267
13.2.1层次数据结构 267
13.2.2层次数据结构的数据存取 268
§13.3 IMS 270
13.3.1 IMS的结构 270
13.3.2 IMS的物理结构 273
13.3.3 IMS数据库的定义 277
13.3.4辅助索引 282
13.3.5 IMS数据库的存取 283
13.3.6其它操作特性 285
§13.4通用选择法 286
§13.5 System 2000 286
13.5.1 System 2000的数据结构 286
13.5.2 System 2000数据库的定义 287
13.5.3 System2000数据库的存取 288
13.5.4数据库的物理结构 293
13.5.5 System 2000的一些操作特性 294
§13.6本章小结 294
习题 296
第十四章设计过程 300
§14.1 引言 300
§14.2设计目标 301
§14.3设计技术 301
§14.4初始设计 302
§14.5设计的迭代过程 305
14.6.1减少存取步的数目 306
§14.6逻辑设计的策略 306
14.5.3设计策略 306
14.5.2设计问题 306
14.5.1性能问题 306
14.6.2派生联系 307
14.6.3数据项的重复 308
14.6.4文件的组合 308
14.6.5组合为非同构文件 308
§14.7物理设计的策略 309
14.7.1问题4——指引元的管理 309
14.7.3 问题6——系统开销 310
§14.8本章小结 310
14.7.2 问题5——需要的存贮量太大 310
习题 311
第十五章初始设计 312
§15.1 引言 312
§15.2关系数据库的设计 312
§15.3网状数据库的设计 312
15.3.1转化规则的特性 313
15.3.2作用和类型的转化 316
15.3.3两种转化方法的选择 317
15.3.4网状数据库的初始物理设计 318
§15.4层次数据库的设计 321
15.4.1层次设计方法的选择 322
15.4.2第1类设计方法 323
15.4.3分部设计法 326
15.4.4第2类设计方法 326
15.4.5第3类设计方法 329
14.4.6作用和类型的转化 332
14.4.7初始物理设计 334
§15.5 COBOL语言的文件设计 334
15.5.1码冲突 334
15.5.2作用和类型的转化 336
§15.6本章小结 338
习题 339
第十六章设计的评价 340
§16.1 引言 340
§16.2 DBMS的选择 340
§16.3数据库的监测 341
§16.4性能估价 341
16.4.1逻辑设计分析与物理设计分析 342
16.4.2分析过程 343
16.4.3存贮需要量 344
16.4.4逻辑分析 347
16.4.5物理分析 350
16.4.6 DBMS环境中的性能估计 352
§16.5模型化的分析方法 353
16.5.1 概率估计 354
16.5.2 响应时间估计 356
16.5.3事务按常数分布 359
16.5.4分析模型的推广 359
§16.6本章小结 359
习题 360
17.2.1设计技术的选择 366
§17.2设计方法的构造 366
§17.1引言 366
第十七章设计方法的选择 366
17.2.2文本化方法的选择 367
§17.3选择1:数据的收集方法 367
17.3.1信息来源 367
17.3.2数据收集的目的 368
§17.4选择2:分析组织数据的方法 374
17.4.1数据流分析 374
17.4.2面向数据的分析方法 374
§17.6选择4:向逻辑设计转化 375
§17.5选择3:数据库说明的构成 375
§17.7选择5:选择设计结果的分析模型 376
§17.8本章小结 376
数据库设计课题 377
设计课题A:合同——供应系统 378
设计课题B:供求系统 380
设计课题C:车间统计系统 383
设计课题D:课程系统 387
附录样本数据库 391
参考文献 399