第一篇 数据库基础 1
1 数据库概论 1
1.1数据管理的进展 1
1.2数据模型 5
1.3数据库的三级模式结构 7
1.4数据库管理系统 9
1.5数据库系统 11
1.6数据库技术的发展 12
2 数据库建模 15
2.1ODL简介 15
2.2实体联系图 19
2.3设计原则 21
2.4子类 22
2.5约束的建模 23
2.6弱实体集 24
3 关系数据模型 25
3.1关系模型的基本概念 25
3.2从ODL模型转化为关系模型 27
3.3从E-R模型转化为关系模型 32
3.4子类结构到关系的转换 33
4 关系数据库设计理论 35
4.1关系模式的存储异常问题 35
4.2规范化 36
4.3数据依赖的公理系统 40
4.4模式的分解 40
5 关系数据库操作 41
5.1关系数据语言概述 41
5.2关系代数 41
5.3关系演算 43
5.4关系系统 44
5.5关系系统的查询优化 44
6 数据库的存储结构 52
6.1数据字典(DD)的组织 52
6.2数据记录的存储设计 53
6.3联系的存储结构 55
6.4存取路径的组织 56
6.5OpenBASE数据库的存储结构 57
第二篇 OpenBASE概述 59
7 OpenBASE系统概述 59
7.1OpenBASE的发展历史 59
7.2OpenBASE体系结构 59
7.3OpenBASE系统的特点 61
8 OpenBASE基础知识 63
8.1数据库和数据字典 63
8.2对SQL的支持 64
8.3安全性控制 65
8.4完整性控制 68
8.5事务管理 71
8.6数据库备份和恢复 75
8.7查询优化 78
8.8SQL持久存储模块和存储过程 80
8.9互连性 81
9 OpenBASE运行环境 85
9.1OpenBASE运行环境 85
9.2OpenBASE的安装 86
9.3OpenBASE的启动和关闭 91
10 使用OpenBASE数据库 92
10.1数据库的创建 92
10.2数据模式的创建 92
10.3数据库的删除 93
10.4数据库的组织方式 94
10.5数据库的管理 94
10.6利用日志重作或废弃事务 95
10.7数据库的备份与恢复 96
10.8如何获得联机帮助 97
第三篇 SQL语言 98
11 SQL语言简介 98
11.1SQL简介 98
11.2SQL的优点 99
11.3标准化SQL实现 100
11.4OpenBASE中使用SQL 100
12 SQL语言的基本元素 103
12.1SQL语言的字符集 103
12.2标识符和分割符 103
12.3标识符 104
12.4关键词 104
12.5名字的惟一性 106
12.6字段的数据类型 107
12.7常量 110
12.8函数 113
12.9运算符 118
12.10表达式 121
12.11子句 122
12.12命令 122
12.13命令语法 123
13 创建和操纵表 125
13.1创建数据库和数据库模式 125
13.2建立表命令CREATE TABLE 126
13.3字段与表的约束 126
13.4更改表命令ALTER TABLE 130
13.5删除表命令DROP TABLE 130
14 SQL查询 132
14.1样本数据库 132
14.2开始查询 133
14.3查询条件 135
14.4子句 139
14.5连接查询 143
14.6子查询 147
14.7UNION查询 151
15 数据操纵 155
15.1非光标操作命令 155
15.2光标操作命令 161
16 数据定义语言命令 164
16.1视图 164
16.2索引 167
16.3数据库触发器 168
16.4存储过程 171
17 动态SQL命令 173
17.1概述 173
17.2直接执行的动态SQL 173
17.3带参数的动态SQL 177
17.4查询类动态SQL 179
18 空值处理 188
18.1概述 188
18.2指示器变量 188
18.3简单表达式中的空值 188
18.4条件表达式中的空值 190
18.5表表达式中的空值 193
18.6完整性约束中的空值 193
18.7插入空值数据 193
19 数据控制 195
19.1安全性控制 195
19.2完整性控制 197
19.3事务管理 197
20 模块和嵌入式SQL 198
20.1SQL绑定模式 198
20.2模块 198
20.3定义模块 199
20.4嵌入式SQL 202
第四篇 SQL持久存储模块和存储过程 204
21 SQL持久存储模块概述 204
21.1概述 204
21.2一个例子 205
21.3块结构 205
21.4变量和常量 206
21.5光标 207
21.6光标FOR循环 207
21.7属性 208
21.8控制结构 208
21.9模块化 208
21.10例外处理 209
21.11SQL/PSM的优点 209
22 SQL持久存储模块基础 210
22.1字符集 210
22.2语法元素 210
22.3数据类型 215
22.4数据类型的转换 218
22.5变量和常量 219
22.6表达式 222
22.7全局声明和局部声明 222
22.8复合语句 224
22.9标识符的二义性处理、作用范围及可见性 229
22.10赋值 230
22.11用户自定义记录类型 232
22.12SQL/PSM表 234
23 流程控制语句 237
23.1概述 237
23.2IF语句 237
23.3CASE语句 239
23.4LOOP语句 244
23.5WHILE语句 246
23.6REPEAT语句 247
23.7FOR语句 249
23.8EXIT和LEAVE语句 251
23.9RETURN语句 253
23.10NULL语句 253
23.11GOTO语句 254
24 子程序 258
24.1概述 258
24.2过程(PROCEDURE) 258
25 访问OpenBASE 261
25.1对SQL的支持 261
25.2事务管理 261
25.3光标管理 262
25.4光标属性 265
25.5光标FOR循环 268
26 例外处理 270
26.1概述 270
26.2为什么使用例外 271
26.3例外处理子程序 272
26.4例外条件的作用范围 278
26.5例外触发 279
26.6例外传播 280
26.7例外条件重新触发 282
26.8例外条件处理 282
27 存储过程运行环境 285
27.1概述 285
27.2VC中调用OpenBASE存储过程 285
27.3VB中调用OpenBASE存储过程 293
27.4PB中调用OpenBASE存储过程 296
第五篇 OpenBASE应用服务器 299
28 OpenBASE Web应用服务器 299
28.1概述 299
28.2高效率的OLTP 300
28.3先进的Web服务器技术 301
28.4Java Servlet环境 301
28.5媒体服务器 302
28.6安全机制 303
28.7运行环境 305
29 THTML语言 306
29.1概述 306
29.2基本语法 307
29.3文件传输 317
29.4多媒体功能 319
29.5收发信件 323
29.6设置“Cookie” 325
29.7用户管理 326