第1篇 Delphi基础篇 1
第1章 Delphi概述 1
1.1 Delphi是什么 1
1.2 Delphi 5.0的新功能 1
1.3 本章小结 5
第2章 Pascal的语法简介 7
2.1 标记、常量和变量 7
2.2 类型简介 8
2.3 运算符与表达式 9
2.4 语句 10
2.5 过程和函数 12
2.6 指针 13
2.7 文件和文件类型 14
2.7.1 文本文件 14
2.7.2 记录文件 16
2.7.3 无类型文件 16
2.7.4 Delphi 5.0中常用的文件处理函数 16
2.8 本章小结 17
第3章 常用控件的使用 19
3.1 Delphi 5.0快速设计 19
3.1.1 进入Delphi的可视化编程环境 19
3.1.2 设计简单的用户界面 21
3.1.3 改变对象的属性 24
3.1.4 编写事件处理过程 26
3.1.5 使用联机帮助Help 27
3.2.2 Edit、MaskEdit和Memo控件 28
3.2.1 Label控件 28
3.2 文本的输入与输出控件 28
3.2.3 List Box和Combo Box控件 29
3.3 按钮和组控件 29
3.3.1 Button和BitBtn控件 29
3.3.2 Speed Button控件 30
3.3.3 Check Box与Radio Button控件 30
3.3.4 分组、分界控件 30
3.5.1 OutLine控件 31
3.5 关系图、文件列表控件 31
3.5.2 目录访问控件 31
3.4.1 Image控件 31
3.4.3 PaintBox控件 31
3.4.2 Shape控件 31
3.4 图形、图像处理控件 31
3.6 滚动控件 32
3.6.1 ScrollBar控件 32
3.6.2 ScrollBox控件 32
3.6.3 几个进度显示控件 32
3.7 网格、表格控件 33
3.8 多媒体(MultiMedia)和OLE控件 33
3.9 使用非可视控件 34
3.9.1 使用菜单控件 34
3.9.2 使用计时器控件Timer 36
3.9.3 使用公用对话框控件 37
3.10 本章小结 38
4.1.1 数据库管理系统 41
4.1 数据库应用简介 41
第4章 Delphi开发数据库应用程序概述 41
第2篇 数据库应用的快速开发 41
4.1.2 数据库应用程序 42
4.2 Delphi的数据库特性及功能简介 43
4.2.1 Delphi的数据库特性 44
4.2.2 Delphi可以访问的数据源(DataSource) 45
4.3 Delphi数据库应用程序的开发方法和步骤 46
4.3.1 概述 46
4.3.2 数据库应用程序的开发步骤 47
4.3.3 交付数据库应用程序 48
4.3.4 安装BDE 48
4.3.5 安装SQL Link 50
4.4 本章小结 52
第5章 简单数据库应用程序的创建 54
5.1 简单的基于单表的数据库应用 54
5.1.1 选择相关的控件 54
5.1.3 运行程序 55
5.1.2 设置控件的属性 55
5.2 利用TDBNavigator控件创建存取程序 56
5.2.1 创建应用程序窗体 57
5.2.2 使用TDBNavigator控件移动记录指针 58
5.2.3 定制TDBNavigator控件 58
5.3 创建主要-明细数据库应用 59
5.3.1 一对多关系的主要-明细型数据库应用程序 59
5.3.2 一对多-多关系的数据库应用 61
5.4 字段对象的使用 62
5.4.1 字段对象的类型 63
5.4.2 创建永久性的字段对象 63
5.4.3 字段对象的属性设置 64
5.4.4 字段对象的访问 66
5.4.5 设定字段对象的显示格式 70
5.4.6 自定义字段以及计算字段对象的创建 71
5.5 查询数据库中的记录 73
5.5.1 使用GotoKey方法查找数据库中的记录 73
5.5.2 使用FindKey方法查找数据库中的记录 75
5.5.3 利用GotoNearest和FindNearest执行不精确查找 76
5.6 修改数据库中的记录 78
5.6.1 Edit方法和Post方法 79
5.6.2 实现异常保护的TRY...FINALLY语句 80
5.7 插入和删除记录 83
5.7.1 逐步插入方法 84
5.7.2 调用InsertRecord插入记录 84
5.8 输入数据的有效性验证 87
5.9 本章小结 90
第6章 Delphi 5.0常用数据库控件的使用 94
6.1 Delphi数据库的体系结构 94
6.2 数据访问控件的应用及编程 95
6.2.1 Delphi数据访问控件的层次结构 95
6.2.2 TSession控件及其应用 96
6.2.3 数据集控件TDataSet及其应用 101
6.2.4 TTable控件及应用 107
6.2.5 TDataSource控件及其应用 113
6.2.6 字段控件和字段编辑器的使用 115
6.2.7 TReport控件及其应用 124
6.2.8 应用举例:多个窗体显示同一个数据库表 125
6.3 数据浏览控件的应用及编程 125
6.3.1 数据浏览控件的基本特性 126
6.3.2 使用TDBText控件显示表中的数据 127
6.3.3 使用TDBEdit控件显示和编辑表中的数据 128
6.3.4 用TDBGrid控件显示和编辑表中的数据 130
6.3.5 TDBNavigator控件及其应用 134
6.3.6 TDBMemo控件及其应用 135
6.3.7 TDBImage控件及其应用 136
6.3.8 数据浏览控件中的列表框和组合框 136
6.3.9 TDBComboBox控件 137
6.3.10 TDBListBox控件 138
6.4 辅助决策控件的使用 138
6.4.1 Teechart统计图表控件的应用 138
6.4.3 创建决策图表的一般步骤 145
6.4.2 在QuickReport报表上创建图表的一般步骤 145
6.5 本章小结 146
第7章 SQL编程及查询控件的使用 147
7.1 SQL语言简介 147
7.1.1 SQL的历史 147
7.1.2 SQL的优点 147
7.2 TQuery控件在SQL编程中的运用 148
7.2.1 TQuery控件的使用 149
7.2.2 在TQuery控件中编写简单的SQL查询命令 150
7.3 SQL语言编程概述 152
7.3.1 SQL命令文本的编写 152
7.3.2 SQL程序的执行 153
7.3.3 通过TQuery控件如何获得活动的数据 154
7.4 动态SQL语句的编程 156
7.4.1 使用Params属性为参数赋值 157
7.4.2 使用ParamByName方法为参数赋值 157
7.4.3 使用Datasource属性为参数赋值 157
7.5.1 设计简单的SQL程序编辑器 159
7.5 SQL编程实例 159
7.4.4 Prepare方法的使用 159
7.5.2 设计一个数据库查询器 161
7.6 本章小结 171
第8章 Delphi 5.0的报表制作 174
8.1 QuickReport的特点 174
8.2 报表控件的介绍 174
8.2.1 TQuickRep控件 174
8.2.2 TQRSubDetail控件 177
8.2.3 TQRBand控件 178
8.2.4 TQRChildBand控件 179
8.2.5 TQRGroup控件 179
8.2.6 TQRLabel控件 179
8.2.7 TQRDBText控件 179
8.2.8 TQRExpr控件 180
8.2.9 TQRSysData控件 180
8.2.10 TQRMemo控件 180
8.2.15 TQRDBImage控件 181
8.2.14 TQRImage控件 181
8.2.16 TQRCompositeReport控件 181
8.2.11 TQRRichText控件 181
8.2.13 TQRShape控件 181
8.2.12 TQRDBRichText控件 181
8.2.17 TQRPreview控件 182
8.2.18 TQRChart控件 182
8.3 一个比较复杂的例子 182
8.4 本章小结 192
第3篇 Delphi 5.0数据库的高级编程 195
第9章 ADO对象和控件以及数据库的连接 195
9.1 ADO简介 195
9.2 ADO控件的使用 196
9.2.1 原生ADO的架构 196
9.2.2 Delphi 5.0中的ADOExpress组件 196
9.3 一个使用ADO的例子 198
9.4 连接数据库 203
9.4.1 永久和临时的TDatabase构件 204
9.4.2 控制连接 205
9.4.3 遍历一个数据库的所有数据集 208
9.4.4 TDatabase与TSession的关系 208
9.5 本章小结 209
第10章 创建多层应用程序 211
10.1 多层体系结构的概述 211
10.1.1 多层体系结构的优势 211
10.1.2 MIDAS技术 211
10.1.3 MIDAS应用程序是怎样工作的 212
10.1.4 客户程序的结构 212
10.1.5 应用服务器的结构 212
10.1.6 MTS 213
10.1.7 IDataBroker接口和IProvider接口 213
10.2 选择连接方式 214
10.3 创建应用服务器的一般步骤 215
10.4.1 TRemoteDataModule 216
10.4 远程数据模块 216
10.4.2 TMTSDataModule 217
10.4.3 TCORBADataModule 218
10.5 Provider 219
10.5.1 控制数据包中的字段 219
10.5.2 Options属性 219
10.5.3 在数据包中加入自定义的信息 220
10.5.4 响应客户的数据请求 220
10.5.6 在更新数据库之前编辑Delta数据包 221
10.5.5 响应客户的更新请求 221
10.5.7 怎样定位记录 222
10.5.8 在服务器端纠错 223
10.6 创建客户程序的一般步骤 223
10.7 与应用服务器连接 224
10.7.1 用DCOM来连接 224
10.7.2 用TCP/IP连接 224
10.7.3 用OLEnterprise连接 224
10.7.5 标识服务器 225
10.7.6 TSimpleObjectBroker 225
10.7.4 用CORBA连接 225
10.7.7 开始连接 226
10.7.8 断开连接 226
10.8 调用服务器上的接口 226
10.9 在客户端纠错 227
10.10 更新数据 227
10.10.1 更新数据的一般步骤 228
10.10.2 ApplyUpdates函数 228
10.10.3 核对出错的记录 228
10.10.4 刷新记录 229
10.10.5 从应用服务器获取参数 229
10.11 自定义应用服务器 229
10.12 多层体系结构下的事务 232
10.13 把客户程序设计为ActiveForm 232
10.14 本章小结 233
11.1 TSession 237
11.1.1 默认的BDE会话期对象 237
第11章 BDE会话期 237
11.1.2 创建另外的BDE会话期对象 238
11.1.3 给BDE会话期对象命名 238
11.1.4 激活BDE会话期对象 239
11.1.5 KeepConnections属性 239
11.1.6 打开和断开连接 240
11.2 检索有关BDE会话期的信息 241
11.3 管理BDE别名 241
11.3.1 指定别名的可见性 241
11.3.2 创建、修改和删除别名 242
11.4 遍历所有的TDatabase构件 243
11.5 访问Paradox表 244
11.6 口令 244
11.6.1 AddPassword 244
11.6.2 RemovePassword和RemoveAllPasswords 245
11.6.3 OnPassword和GetPassword 245
11.7 管理多个BDE会话期对象 246
11.8 本章小结 247
12.1.2 CanModify属性 250
12.1.1 浏览数据 250
第12章 TClientDataSet 250
12.1 浏览和编辑数据 250
12.1.3 取消修改 251
12.1.4 合并修改 251
12.1.5 纠错 252
12.2 索引 252
12.2.1 创建一个新的索引 252
12.2.3 用索引把数据分组 253
12.3 计算字段 253
12.2.2 删除和切换索引 253
12.4 统计值 254
12.4.1 指定统计方式 254
12.4.2 指定分组 255
12.4.3 怎样获取统计值 255
12.5 数据包 256
12.5.1 直接对Data属性赋值 256
12.5.2 在数据包中加入自定义的信息 256
12.6.2 向应用服务器传递参数 257
12.6.1 怎样在客户端获得IProvider接口 257
12.5.3 克隆另一个数据集 257
12.6 与应用服务器通信 257
12.6.3 怎样向应用服务器请求数据 258
12.6.4 更新数据库 258
12.7 在文件中存取数据 258
12.8 本章小结 259
第13章 剖析几个MIDAS示范程序 264
13.1 一个ActiveForm的例子 264
13.2 一个动态传递SQL语句的示范程序 266
13.3 一个计算统计值的示范程序 271
13.4 一个全面演示TClientDataSet功能的示范程序 272
13.5 本章小结 290
附录A 控件TQueryStock 292
附录B 编译错误信息 299
附录C InterBase概述 324
附录D 配置数据库引擎BDE(Borland DataBase Engine) 329