第1章  数据库系统概论 1
1.1  数据库系统基础知识 1
1.1.1  数据管理进展 1
1.1.2  数据库体系结构 4
1.1.3  数据库系统特点 5
1.1.4  数据库管理系统 6
1.2  现实世界的数据描述 8
1.2.1  数据描述 8
1.2.2  概念模型 8
1.2.3  数据模型 11
1.3  关系结构 12
1.3.1  关系描述概念 12
1.3.2  关系组成与性质 13
1.3.3  建立关系结构模型 14
1.3.4  关系模型优点 14
1.4  关系操作 15
1.4.1  投影操作 15
1.4.2  选择操作 16
1.4.3  连接操作 16
1.5  关系完整性 17
1.5.1  关系模式 17
1.5.2  实体完整性 18
1.5.3  参照完整性 18
1.5.4  用户定义完整性 19
习题1 20
第2章  Visual FoxPro 7系统概述 21
2.1  初识Visual FoxPro 7 21
2.1.1  Visual FoxPro发展历史 21
2.1.2  Visual FoxPro 7主要性能指标 22
2.1.3  文件类型 23
2.1.4  Visual FoxPro 7安装、卸载和
启动 24
2.2  Visual FoxPro 7基本知识 28
2.2.1  Visual FoxPro 7窗口组成 28
2.2.2  Visual FoxPro 7操作方式 29
2.2.3  菜单系统组成 30
2.2.4  系统菜单简述 31
2.2.5  常用控件 33
2.2.6  命令语法规则 34
2.2.7  Visual FoxPro 7系统设置 36
习题2 37
实验2 37
第3章  Visual FoxPro 7语言基础 38
3.1  常量、变量和数据类型 38
3.1.1  常量 38
3.1.2  数据类型 38
3.1.3  变量分类 39
3.1.4  内存变量 39
3.1.5  数组变量 40
3.1.6  系统变量 42
3.2  表达式 43
3.2.1  算术表达式 43
3.2.2  字符表达式 44
3.2.3  关系表达式 44
3.2.4  逻辑表达式 45
3.2.5  表达式生成器 46
3.3  常用函数及其应用 47
3.3.1  函数分类 47
3.3.2  字符处理函数 48
3.3.3  数值处理函数 50
3.3.4  逻辑函数 50
3.3.5  日期和时间函数 51
3.3.6  其他函数 51
习题3 55
实验3 56

第4章  结构化程序设计 58
4.1  顺序程序设计 58
4.1.1  程序编辑、执行和调试 58
4.1.2  定位输入/输出 61
4.2  条件分支程序设计 62
4.2.1  条件分支设计(IF…ENDIF) 62
4.2.2  多重分支(DO CASE…ENDCASE) 64
4.3  循环结构程序设计 66
4.3.1  FOR循环 66
4.3.2  WHILE循环 69
4.3.3  退出循环(EXIT/LOOP) 69
4.4  函数和过程程序设计 69
4.4.1  自定义函数 70
4.4.2  过程设计 71
4.4.3  变量作用域 73
习题4 75
实验4 75
第5章  面向对象程序设计 76
5.1  面向对象程序设计基础 76
5.1.1  类和对象举例 76
5.1.2  定义类 77
5.1.3  属性 78
5.1.4  方法 79
5.1.5  创建对象 81
5.1.6  面向对象程序设计概念 82
5.1.7  面向对象程序设计方法概述 82
5.2  对象程序设计 83
5.2.1  创建与释放对象 83
5.2.2  属性设置 84
5.2.3  引用对象 84
5.2.4  AddObject()方法 85
5.3  事件程序设计 86
5.3.1  Visual FoxPro 7事件概述 86
5.3.2  事件的触发与停止 87
5.3.3  错误事件处理 89
5.4  类程序设计 90
5.4.1  创建类库 90
5.4.2  修改类定义 94
5.4.3  类浏览器 96
5.5  Visual FoxPro 7类概述 97
5.5.1  基类 97
5.5.2  基础类 99
5.5.3  向导类 99
5.6  类库应用程序设计 99
5.6.1  自定义类库应用 100
5.6.2  系统类库应用 101
习题5 103
实验5 103
第6章  数据库设计 105
6.1  数据库设计概述 105
6.1.1  数据库设计步骤 105
6.1.2  需求分析 106
6.1.3  概念设计 107
6.1.4  逻辑设计 107
6.1.5  物理设计 108
6.1.6  数据库实施 108
6.1.7  系统管理和维护 108
6.2  数据规范化 109
6.2.1  函数依赖 110
6.2.2  第一范式(1NF) 111
6.2.3  第二范式(2NF) 112
6.2.4  第三范式(3NF) 113
6.2.5  关系模式规范化 114
6.3  教学管理数据库设计 114
6.3.1  教学管理数据库系统分析 115
6.3.2  规范化设计 116
6.3.3  教学管理数据库逻辑设计 119
习题6 121
第7章  数据定义与验证 122
7.1  Visual FoxPro 7数据库概念 122
7.1.1  数据库容器概念 122
7.1.2  菜单方式操纵数据库 123
7.1.3  命令方式操纵数据库 125
7.2  表设计 126
7.2.1  命令方式设计表 126
7.2.2  初识表设计器 129
7.2.3  设计字段 130
7.2.4  设计索引 134
7.2.5  设计表约束 137
7.3  参照完整性设计 139
7.3.1  创建表间关系 139
7.3.2  删除和修改表间关系 140
7.3.3  设计参照完整性 141
7.3.4  逻辑数据库结构定义小结 144
7.4  数据库验证 145
7.4.1  验证数据库物理文件 145
7.4.2  验证表结构定义 145
7.4.3  验证数据库结构定义 146
7.4.4  验证字段和记录约束
是否起作用 148
7.4.5  验证索引是否起作用 149
7.4.6  验证参照完整性 149
习题7 152
实验7 153
第8章  数据操作技术 154
8.1  记录的基本操作 154
8.1.1  打开与关闭表 154
8.1.2  增加记录 155
8.1.3  查询记录 156
8.1.4  定位记录与指针管理 157
8.1.5  更新记录 160
8.1.6  删除和恢复记录 161
8.1.7  过滤记录 163
8.2  记录可视化操作 164
8.2.1  浏览操作 164
8.2.2  使用表菜单操作 166
8.3  高级查询技术 170
8.3.1  SQL语言概述 171
8.3.2  SELECT基本查询 171
8.3.3  SELECT带条件查询
(WHERE) 173
8.3.4  复杂查询 174
8.3.5  查询结果处理 178
8.4  查询设计器 182
8.4.1  查询设计器概述 182
8.4.2  查询设计器应用 183
8.4.3  查询输出结果 185
习题8 186
实验8 187
第9章  表单基本技术 188
9.1  表单类 188
9.1.1  初识表单设计器 188
9.1.2  操作表单 188
9.1.3  表单属性和方法 190
9.1.4  表单集 192
9.2  数据环境(DataEnvironment)定义 194
9.2.1  游标(Cursor)类 194
9.2.2  关系(Relation)类 196
9.2.3  数据环境(DataEnvironment)
类 197
9.3  控件应用初步 198
9.4  按钮类控件 202
9.4.1  命令按钮和按钮组 202
9.4.2  单选按钮 206
9.4.3  复选框 207
9.4.4  微调按钮 209
9.5  框类控件 211
9.5.1  列表框 212
9.5.2  组合框 214
9.5.3  编辑框 215
9.5.4  页框 217
9.5.5  网格(Grid) 218
9.6  其他控件 221
9.6.1  图像控件 221
9.6.2  定时器控件 222
9.6.3  超链接控件 224
9.7  表单布局设计技巧 225
9.7.1  对象编辑 225
9.7.2  对象排列 226
习题9 227

实验9 229
第10章  组件应用技术 230
10.1  组件技术概述 230
10.1.1  组件技术演变 230
10.1.2  组件对象模型 231
10.1.3  Visual FoxPro的COM
对象功能 232
10.2  OLE控件应用 233
10.2.1  OLE对象嵌入与链接 234
10.2.2  ActiveX绑定控件应用 236
10.2.3  MS Graph应用 236
10.2.4  在表单中插入PowerPoint演示
文稿 238
10.2.5  添加式ActiveX控件应用 239
10.3  Visual FoxPro 7组件应用 241
10.3.1  组件库概述 241
10.3.2  基础类概述 242
10.3.3  查找型字段组合框类 245
10.3.4  使用模板生成表单字段 248
10.3.5  使用数据编辑类 249
10.3.6  使用网格数据编辑类 251
10.3.7  基于QBF类的查询表单设计 252
习题10 254
实验10 255
第11章  应用表单开发技术 256
11.1  应用系统开发概述 256
11.1.1  数据库应用系统开发模型 256
11.1.2  数据库系统适应问题 257
11.1.3  应用系统概要设计 258
11.2  视图设计技术 259
11.2.1  什么是视图 260
11.2.2  视图设计器概述 260
11.2.3  设计视图 261
11.3  应用表单设计 264
11.3.1  学生管理表单设计 264
11.3.2  成绩管理表单设计 272
11.3.3  课程对照表表单设计 277
11.3.4  教师授课表单设计 278
11.3.5  课程表单设计 283
习题11 288
实验11 289
第12章  报表设计技术 290
12.1  报表格式设计初步 290
12.1.1  报表设计器 290
12.1.2  页面设置 291
12.1.3  快速报表 292
12.1.4  存储与预览报表 293
12.2  报表设计基本方法 294
12.2.1  报表格式概述 294
12.2.2  域控件设计 295
12.2.3  标签控件设计 299
12.2.4  线条控件设计 300
12.2.5  标题/总结设计 301
12.2.6  分组设计 303
12.2.7  圆角矩形控件设计 305
12.2.8  OLE控件设计 306
12.2.9  报表输出设计 307
12.3  应用报表设计 308
12.3.1  设计学生注册单卡报表 308
12.3.2  设计课程表报表 310
12.4  Excel式报表设计 312
12.4.1  FoxPro调用Excel基本操作 312
12.4.2  Excel模板设计 317
12.4.3  FoxPro向Excel传递数据 321
习题12 325
实验12 326
第13章  应用系统集成技术 327
13.1  菜单技术 327
13.1.1  菜单生成器应用 327
13.1.2  生成菜单程序 331
13.1.3  菜单系统选择逻辑设计 334
13.1.4  将系统菜单引入用户
菜单系统 337
13.1.5  顶层表单设计 340
13.1.6  应用系统启动程序设计 341
13.2  项目集成 345
13.2.1  项目管理器概述 345
13.2.2  创建教学管理系统项目 346
习题 13 349
实验 13 350
第14章  客户/服务器开发技术 351
14.1  客户/服务器开发概述 351
14.1.1  客户/服务器开发模型 351
14.1.2  ODBC连接技术 352
14.2  访问远程数据方法 356
14.2.1  远程视图方法 356
14.2.2  SQL Pass Through方法 358
14.3  并发控制 360
14.3.1  什么是锁 360
14.3.2  封锁机制 361
14.3.3  死锁 362
14.4  缓冲技术 363
14.4.1  缓冲方式分类与设置 363
14.4.2  缓冲技术应用 365
14.5  事务控制 366
14.5.1  事务控制概念 366
14.5.2  事务控制命令与应用 366
习题14 367
实验14 368
第15章  Web数据库技术 369
15.1  Web数据库概述 369
15.1.1  Web数据库开发模型 369
15.1.2  Web服务器——IIS 370
15.1.3  Web信息发布 373
15.1.4  Web数据库访问方法 378
15.2  IDC方法 379
15.2.1  IDC方法需要的文件 379
15.2.2  创建数据源与HTML程序 379
15.2.3  IDC文件设计 380
15.2.4  HTX文件设计 381
15.2.5  提交数据 383
15.3  ADO方法 384
15.3.1  ASP技术概述 384
15.3.2  使用ADO方法查询Visual FoxPro
数据库 385
15.3.3  使用ADO方法修改数据库
记录 387
习题15 390
实验15 390
参考文献 391
 第1章  数据库系统概论 1
1.1  数据库系统基础知识 1
1.1.1  数据管理进展 1
1.1.2  数据库体系结构 4
1.1.3  数据库系统特点 5
1.1.4  数据库管理系统 6
1.2  现实世界的数据描述 8
1.2.1  数据描述 8
1.2.2  概念模型 8
1.2.3  数据模型 11
1.3  关系结构 12
1.3.1  关系描述概念 12
1.3.2  关系组成与性质 13
1.3.3  建立关系结构模型 14
1.3.4  关系模型优点 14
1.4  关系操作 15
1.4.1  投影操作 15
1.4.2  选择操作 16
1.4.3  连接操作 16
1.5  关系完整性 17
1.5.1  关系模式 17
1.5.2  实体完整性 18
1.5.3  参照完整性 18
1.5.4  用户定义完整性 19
习题1 20
第2章  Visual FoxPro 7系统概述 21
2.1  初识Visual FoxPro 7 21
2.1.1  Visual FoxPro发展历史 21
2.1.2  Visual FoxPro 7主要性能指标 22
2.1.3  文件类型 23
2.1.4  Visual FoxPro 7安装、卸载和
启动 24
2.2  Visual FoxPro 7基本知识 28
2.2.1  Visual FoxPro 7窗口组成 28
2.2.2  Visual FoxPro 7操作方式 29
2.2.3  菜单系统组成 30
2.2.4  系统菜单简述 31
2.2.5  常用控件 33
2.2.6  命令语法规则 34
2.2.7  Visual FoxPro 7系统设置 36
习题2 37
实验2 37
第3章  Visual FoxPro 7语言基础 38
3.1  常量、变量和数据类型 38
3.1.1  常量 38
3.1.2  数据类型 38
3.1.3  变量分类 39
3.1.4  内存变量 39
3.1.5  数组变量 40
3.1.6  系统变量 42
3.2  表达式 43
3.2.1  算术表达式 43
3.2.2  字符表达式 44
3.2.3  关系表达式 44
3.2.4  逻辑表达式 45
3.2.5  表达式生成器 46
3.3  常用函数及其应用 47
3.3.1  函数分类 47
3.3.2  字符处理函数 48
3.3.3  数值处理函数 50
3.3.4  逻辑函数 50
3.3.5  日期和时间函数 51
3.3.6  其他函数 51
习题3 55
实验3 56

第4章  结构化程序设计 58
4.1  顺序程序设计 58
4.1.1  程序编辑、执行和调试 58
4.1.2  定位输入/输出 61
4.2  条件分支程序设计 62
4.2.1  条件分支设计(IF…ENDIF) 62
4.2.2  多重分支(DO CASE…ENDCASE) 64
4.3  循环结构程序设计 66
4.3.1  FOR循环 66
4.3.2  WHILE循环 69
4.3.3  退出循环(EXIT/LOOP) 69
4.4  函数和过程程序设计 69
4.4.1  自定义函数 70
4.4.2  过程设计 71
4.4.3  变量作用域 73
习题4 75
实验4 75
第5章  面向对象程序设计 76
5.1  面向对象程序设计基础 76
5.1.1  类和对象举例 76
5.1.2  定义类 77
5.1.3  属性 78
5.1.4  方法 79
5.1.5  创建对象 81
5.1.6  面向对象程序设计概念 82
5.1.7  面向对象程序设计方法概述 82
5.2  对象程序设计 83
5.2.1  创建与释放对象 83
5.2.2  属性设置 84
5.2.3  引用对象 84
5.2.4  AddObject()方法 85
5.3  事件程序设计 86
5.3.1  Visual FoxPro 7事件概述 86
5.3.2  事件的触发与停止 87
5.3.3  错误事件处理 89
5.4  类程序设计 90
5.4.1  创建类库 90
5.4.2  修改类定义 94
5.4.3  类浏览器 96
5.5  Visual FoxPro 7类概述 97
5.5.1  基类 97
5.5.2  基础类 99
5.5.3  向导类 99
5.6  类库应用程序设计 99
5.6.1  自定义类库应用 100
5.6.2  系统类库应用 101
习题5 103
实验5 103
第6章  数据库设计 105
6.1  数据库设计概述 105
6.1.1  数据库设计步骤 105
6.1.2  需求分析 106
6.1.3  概念设计 107
6.1.4  逻辑设计 107
6.1.5  物理设计 108
6.1.6  数据库实施 108
6.1.7  系统管理和维护 108
6.2  数据规范化 109
6.2.1  函数依赖 110
6.2.2  第一范式(1NF) 111
6.2.3  第二范式(2NF) 112
6.2.4  第三范式(3NF) 113
6.2.5  关系模式规范化 114
6.3  教学管理数据库设计 114
6.3.1  教学管理数据库系统分析 115
6.3.2  规范化设计 116
6.3.3  教学管理数据库逻辑设计 119
习题6 121
第7章  数据定义与验证 122
7.1  Visual FoxPro 7数据库概念 122
7.1.1  数据库容器概念 122
7.1.2  菜单方式操纵数据库 123
7.1.3  命令方式操纵数据库 125
7.2  表设计 126
7.2.1  命令方式设计表 126
7.2.2  初识表设计器 129
7.2.3  设计字段 130
7.2.4  设计索引 134
7.2.5  设计表约束 137
7.3  参照完整性设计 139
7.3.1  创建表间关系 139
7.3.2  删除和修改表间关系 140
7.3.3  设计参照完整性 141
7.3.4  逻辑数据库结构定义小结 144
7.4  数据库验证 145
7.4.1  验证数据库物理文件 145
7.4.2  验证表结构定义 145
7.4.3  验证数据库结构定义 146
7.4.4  验证字段和记录约束
是否起作用 148
7.4.5  验证索引是否起作用 149
7.4.6  验证参照完整性 149
习题7 152
实验7 153
第8章  数据操作技术 154
8.1  记录的基本操作 154
8.1.1  打开与关闭表 154
8.1.2  增加记录 155
8.1.3  查询记录 156
8.1.4  定位记录与指针管理 157
8.1.5  更新记录 160
8.1.6  删除和恢复记录 161
8.1.7  过滤记录 163
8.2  记录可视化操作 164
8.2.1  浏览操作 164
8.2.2  使用表菜单操作 166
8.3  高级查询技术 170
8.3.1  SQL语言概述 171
8.3.2  SELECT基本查询 171
8.3.3  SELECT带条件查询
(WHERE) 173
8.3.4  复杂查询 174
8.3.5  查询结果处理 178
8.4  查询设计器 182
8.4.1  查询设计器概述 182
8.4.2  查询设计器应用 183
8.4.3  查询输出结果 185
习题8 186
实验8 187
第9章  表单基本技术 188
9.1  表单类 188
9.1.1  初识表单设计器 188
9.1.2  操作表单 188
9.1.3  表单属性和方法 190
9.1.4  表单集 192
9.2  数据环境(DataEnvironment)定义 194
9.2.1  游标(Cursor)类 194
9.2.2  关系(Relation)类 196
9.2.3  数据环境(DataEnvironment)
类 197
9.3  控件应用初步 198
9.4  按钮类控件 202
9.4.1  命令按钮和按钮组 202
9.4.2  单选按钮 206
9.4.3  复选框 207
9.4.4  微调按钮 209
9.5  框类控件 211
9.5.1  列表框 212
9.5.2  组合框 214
9.5.3  编辑框 215
9.5.4  页框 217
9.5.5  网格(Grid) 218
9.6  其他控件 221
9.6.1  图像控件 221
9.6.2  定时器控件 222
9.6.3  超链接控件 224
9.7  表单布局设计技巧 225
9.7.1  对象编辑 225
9.7.2  对象排列 226
习题9 227

实验9 229
第10章  组件应用技术 230
10.1  组件技术概述 230
10.1.1  组件技术演变 230
10.1.2  组件对象模型 231
10.1.3  Visual FoxPro的COM
对象功能 232
10.2  OLE控件应用 233
10.2.1  OLE对象嵌入与链接 234
10.2.2  ActiveX绑定控件应用 236
10.2.3  MS Graph应用 236
10.2.4  在表单中插入PowerPoint演示
文稿 238
10.2.5  添加式ActiveX控件应用 239
10.3  Visual FoxPro 7组件应用 241
10.3.1  组件库概述 241
10.3.2  基础类概述 242
10.3.3  查找型字段组合框类 245
10.3.4  使用模板生成表单字段 248
10.3.5  使用数据编辑类 249
10.3.6  使用网格数据编辑类 251
10.3.7  基于QBF类的查询表单设计 252
习题10 254
实验10 255
第11章  应用表单开发技术 256
11.1  应用系统开发概述 256
11.1.1  数据库应用系统开发模型 256
11.1.2  数据库系统适应问题 257
11.1.3  应用系统概要设计 258
11.2  视图设计技术 259
11.2.1  什么是视图 260
11.2.2  视图设计器概述 260
11.2.3  设计视图 261
11.3  应用表单设计 264
11.3.1  学生管理表单设计 264
11.3.2  成绩管理表单设计 272
11.3.3  课程对照表表单设计 277
11.3.4  教师授课表单设计 278
11.3.5  课程表单设计 283
习题11 288
实验11 289
第12章  报表设计技术 290
12.1  报表格式设计初步 290
12.1.1  报表设计器 290
12.1.2  页面设置 291
12.1.3  快速报表 292
12.1.4  存储与预览报表 293
12.2  报表设计基本方法 294
12.2.1  报表格式概述 294
12.2.2  域控件设计 295
12.2.3  标签控件设计 299
12.2.4  线条控件设计 300
12.2.5  标题/总结设计 301
12.2.6  分组设计 303
12.2.7  圆角矩形控件设计 305
12.2.8  OLE控件设计 306
12.2.9  报表输出设计 307
12.3  应用报表设计 308
12.3.1  设计学生注册单卡报表 308
12.3.2  设计课程表报表 310
12.4  Excel式报表设计 312
12.4.1  FoxPro调用Excel基本操作 312
12.4.2  Excel模板设计 317
12.4.3  FoxPro向Excel传递数据 321
习题12 325
实验12 326
第13章  应用系统集成技术 327
13.1  菜单技术 327
13.1.1  菜单生成器应用 327
13.1.2  生成菜单程序 331
13.1.3  菜单系统选择逻辑设计 334
13.1.4  将系统菜单引入用户
菜单系统 337
13.1.5  顶层表单设计 340
13.1.6  应用系统启动程序设计 341
13.2  项目集成 345
13.2.1  项目管理器概述 345
13.2.2  创建教学管理系统项目 346
习题 13 349
实验 13 350
第14章  客户/服务器开发技术 351
14.1  客户/服务器开发概述 351
14.1.1  客户/服务器开发模型 351
14.1.2  ODBC连接技术 352
14.2  访问远程数据方法 356
14.2.1  远程视图方法 356
14.2.2  SQL Pass Through方法 358
14.3  并发控制 360
14.3.1  什么是锁 360
14.3.2  封锁机制 361
14.3.3  死锁 362
14.4  缓冲技术 363
14.4.1  缓冲方式分类与设置 363
14.4.2  缓冲技术应用 365
14.5  事务控制 366
14.5.1  事务控制概念 366
14.5.2  事务控制命令与应用 366
习题14 367
实验14 368
第15章  Web数据库技术 369
15.1  Web数据库概述 369
15.1.1  Web数据库开发模型 369
15.1.2  Web服务器——IIS 370
15.1.3  Web信息发布 373
15.1.4  Web数据库访问方法 378
15.2  IDC方法 379
15.2.1  IDC方法需要的文件 379
15.2.2  创建数据源与HTML程序 379
15.2.3  IDC文件设计 380
15.2.4  HTX文件设计 381
15.2.5  提交数据 383
15.3  ADO方法 384
15.3.1  ASP技术概述 384
15.3.2  使用ADO方法查询Visual FoxPro
数据库 385
15.3.3  使用ADO方法修改数据库
记录 387
习题15 390
实验15 390
参考文献 391