第1章 基础知识 1
1.1 数据库应用模式的发展 1
1.1.1 主机应用模式 1
1.1.2 文件服务器应用模式 2
1.1.3 客户/服务器应用模式 3
1.1.4 文件服务器与客户/服务器的数据库操作 3
1.1.5 分布式计算应用模式 5
1.1.6 Web网络应用模式 7
1.2 数据库应用系统开发方法概述 8
1.2.1 结构化生命周期法 9
1.2.2 快速原型法 11
1.3 面向对象方法 12
1.3.1 对象与类 12
1.3.2 对象的属性、方法和状态 13
1.3.3 对象的交互与消息 14
1.3.4 类的确定与划分 14
1.3.6 继承性 15
1.3.5 封装性 15
1.3.7 多态性 17
1.3.8 面向对象的分析与设计方法 17
1.3.9 PowerBuilder中的面向对象技术 20
1.4 使用PowerBuilder开发的基本思路 24
1.5 习题 25
第2章 PowerBuilder简介 26
2.1 PowerBuilder的特点 26
2.2 卓越的开发效率 29
2.2.1 工作空间和目标 30
2.2.2 系统树窗口 30
2.2.3 输出窗口和剪贴窗口 31
2.2.4 源代码编辑器 31
2.2.5 启动PowerBuilder时直接定位 31
2.2.6 例外处理 31
2.2.7 其他 31
2.3 强大的Web开发功能 32
2.4 与EAServer的紧密集成 33
2.5.1 对象、属性与事件 34
2.5.2 PowerBuilder库与文件类型 34
2.5.3 应用对象 34
2.5 PowerBuilder对象概述 34
2.5.4 窗口对象 35
2.5.5 数据窗口对象 36
2.5.7 全局函数 37
2.5.8 查询 37
2.5.6 菜单 37
2.5.9 结构 38
2.5.10 用户对象 38
2.5.11 工程对象 38
2.6 PowerBuilder8.0安装说明 38
2.7 PowerBuilder8.0的开发环境 40
2.7.1 工作空间和目标 40
2.7.2 PowerBuilder窗口 40
2.7.3 系统树、剪贴和输出窗口 41
2.7.4 画板 42
2.7.5 PowerBar、PainterBar和StyleBar 43
2.7.6 定制工具栏 46
2.8 定制PowerBuilder8.0的环境 47
2.8.1 钉住窗口标题栏 48
2.8.2 移动和复位窗口 48
2.8.3 保存窗口布局模式 49
2.8.4 设置启动选项 49
2.9 习题 50
3.1.1 注解 51
第3章 PowerScript语言简介 51
3.1 基本概念 51
3.1.2 标识符 52
3.1.3 特殊的ASCII字符 52
3.1.4 保留字 53
3.1.5 代词 54
3.1.6 续行 55
3.1.7 语句分隔符 56
3.1.8 空值 57
3.2 数据类型 58
3.2.1 标准数据类型 58
3.2.2 任意数据类型 59
3.2.3 系统对象数据类型 60
3.2.4 枚举数据类型 61
3.3 说明 62
3.3.1 说明变量 62
3.3.3 数组的说明和使用 65
3.3.2 说明常量 65
3.4 运算符和表达式 67
3.5 结构和对象 68
3.5.1 结构 68
3.5.2 对象 69
3.6 PowerScript语句 70
3.6.1 赋值语句 70
3.6.2 条件语句 71
3.6.3 多重分支语句 72
3.6.4 循环语句 74
3.6.5 GOTO语句 76
3.6.6 CALL语句 76
3.6.7 CREATE和DESTROY语句 77
3.6.8 HAL语句 78
3.6.9 RETURN语句 78
3.7 调用函数和事件 79
3.7.1 函数和事件的一些概念 79
3.7.2 调用函数和事件 80
3.7.3 调用祖先对象中的函数和事件 82
3.7.4 关于系统函数 83
3.7.5 一组有关文件操作的函数 83
3.8 习题 95
第4章 SQL语言 96
4.1 事务对象与数据库连接 96
4.1.1 事务对象 96
4.1.2 连接数据库的语句 97
4.2 SELECT查询语句 98
4.2.1 简单查询 100
4.2.2 连接查询 101
4.2.3 嵌套查询 102
4.2.4 特殊运算符 103
4.2.5 排序 105
4.2.6 分组与计算查询 106
4.2.7 利用空值查询 108
4.2.8 别名与自连接查询 109
4.2.9 内外层互相关嵌套查询 110
4.2.11 集合的并运算 111
4.2.10 超连接查询 111
4.3 在PowerScript中嵌入SQL SELECT语句 112
4.3.1 嵌入SQLSELECT语句 112
4.3.2 只返回一条记录的SQL SELECT语句 113
4.3.3 使用游标 114
4.4 操作语句与事务提交 116
4.4.1 INSERT语句 117
4.4.2 DELETE语句 117
4.4.4 事务提交与撤消 118
4.4.3 UPDATE语句 118
4.5 利用存储过程进行查询 119
4.6 利用存储过程更新数据库 121
4.7 查询和更新Blob类型字段的语句 122
4.8 动态SQL语句 124
4.8.1 动态SOL语句概述 124
4.8.2 动态SQL语句格式1 126
4.8.3 动态SQL语句格式2 127
4.8.4 动态SQL语句格式3 128
4.8.5 动态SQL语句格式4 130
4.9 习题 133
第5章 在PowerBuilder环境中操作数据库 134
5.1 与数据库的连接 134
5.1.1 数据源 134
5.1.2 PowerBuilder的数据库配置文件 137
5.2 操作数据库 138
5.2.1 浏览数据库中的数据 139
5.2.2 插入、删除和更新数据库记录 140
5.2.3 浏览和修改数据库表结构 142
5.2.4 从数据库中删除表 144
5.3 建立一个新的数据库 145
5.3.1 创建数据库 145
5.3.2 建立新的数据库表 150
5.3.3 建立关键字和索引 152
5.4 断开与数据库的连接 155
5.5 习题 155
6.1.1 建立工作空间 157
第6章 初步体验PowerBuilder的开发方法 157
6.1 浏览职工信息的应用程序 157
6.1.2 建立目标和应用对象 159
6.1.3 建立应用程序的主窗口 160
6.1.4 建立查询职工信息的数据窗口对象 162
6.1.5 修改建立好的数据窗口对象 164
6.1.6 在主窗口中添加控件 168
6.1.7 写事件驱动程序 169
6.2.1 添加控件 171
6.2 增加排序功能 171
6.2.2 有关排序的函数 172
6.2.3 写事件驱动程序 173
6.3 关联与条件查询 174
6.3.1 带参数的数据窗口对象 175
6.3.2 再增加一个数据窗口控件 177
6.3.3 写事件驱动程序 178
6.4 习题 178
第7章 程序的调试与发行 179
7.1 应用程序的调试 179
7.1.1 Debug画板简介 179
7.1.2 在程序中设置断点 181
7.1.3 跟踪程序的执行 182
7.1.4 直接观察变量的值 183
7.1.5 设置条件断点排除特殊错误 184
7.2 编译与发行应用程序 185
7.2.1 生成可执行程序 185
7.2.2 分发应用程序 187
7.3 习题 188
第8章 数据窗口技术 189
8.1 数据窗口对象 189
8.1.1 基本概念 189
8.1.2 风格各异的显示格式 190
8.1.3 数据窗口的数据源 194
8.1.4 使用数据窗口的基本步骤 196
8.2.1 数据窗口画板环境简介 197
8.2 数据窗口画板 197
8.2.2 在Design窗口中设计数据窗口 198
8.2.3 Preview窗口与数据库操作 198
8.3 设计数据窗口对象 199
8.3.1 设置数据窗口对象的属性 200
8.3.2 在数据窗口对象中添加控件 203
8.3.3 添加计算列和计算域 205
8.3.4 在数据窗口中灵活使用控件 208
8.4 数据窗口控件 209
8.4.1 事务对象与数据窗口 210
8.4.2 连接数据窗口和事务对象的函数 212
8.4.3 数据窗口控件的操作 213
8.5 数据存储对象 218
8.6 动态数据窗口 219
8.6.1 动态关联数据窗口对象和数据窗口控件 219
8.6.2 动态建立数据窗口对象 220
8.6.3 动态修改数据窗口对象 224
8.6.4 QBE数据窗口与通用查询 228
8.7 习题 230
第9章 用户界面设计 231
9.1 窗口与控件 231
9.1.1 窗口对象及窗口的类型 231
9.1.2 PowerBuilder为窗口提供的各种控件 233
9.1.3 设计窗口时常用的技术 248
9.2 常用对话框 252
9.2.1 给出提示信息的消息对话框 252
9.2.2 打开文件的Open对话框 254
9.2.3 保存文件的Save对话框 255
9.3 菜单 256
9.3.1 建立和设计菜单 256
9.3.2 把菜单粘连到窗口上 261
9.4 MDI界面 261
9.4.1 MDI窗口的构成 261
9.4.2 建立MDI窗口 262
9.4.3 MDI窗口的工具栏 262
9.5 多窗口实例 265
9.4.4 MDI窗口的MieroHelp 265
9.5.1 窗口对象与窗口实例 266
9.5.2 多窗口实例 266
9.5.3 窗口数组 267
9.6 选项卡界面设计 268
9.6.1 术语及实例说明 269
9.6.2 建立Tab控件和添加选项卡 269
9.6.3 管理Tab控件及其选项卡 271
9.6.4 写Tab控件的程序 272
9.6.5 程序实例 273
9.7 列表窗口界面设计 276
9.7.1 在画板中设计列表窗口 276
9.7.2 ListViewltem对象 277
9.7.3 ListView控件的函数 278
9.7.4 列表窗口应用实例 280
9.7.5 进一步讨论详细资料方式 285
9.8 按层次展开信息的界面 286
9.8.1 TreeView控件概述及TreeViewItem对象 286
9.8.2 TreeView控件项目的函数 287
9.8.3 TreeView控件基本应用实例 289
9.8.4 TreeView控件高级应用技巧 292
9.9 使用图形展现数据的界面 301
9.9.1 Graph控件简介 301
9.9.2 Graph控件的主要函数 302
9.9.3 生成单一数据系列的图形 305
9.9.4 生成多个数据系列的对比图形 308
9.9.5 动态改变图形的类型 311
9.10 习题 313
10.1 用户对象概念 316
10.1.1 类用户对象 316
第10章 用户对象与软件可重用 316
10.1.2 可视用户对象 317
10.2 建立用户对象 318
10.2.1 用户对象画板 318
10.2.2 建立定制类用户对象 319
10.2.3 建立标准类用户对象 320
10.2.4 建立定制可视用户对象 321
10.2.5 建立标准可视用户对象 321
10.3 设计和定义用户事件 321
10.3.1 定义用户事件 322
10.3.2 提高效率的策略 323
10.3.3 为用户对象的事件编写程序 324
10.4 习题 327
11.1 保存和读取程序运行时的参数 328
11.1.1 使用初始化文件 328
第11章 高级专题 328
11.1.2 使用Windows注册表 330
11.2 读写数据库中的“大”数据 332
11.2.1 处理“大”数据的SQL语句 332
11.2.2 处理“大”数据的实例 333
11.3 调用外部函数 335
11.3.1 外部函数的说明方法 335
11.3.2 外部函数调用实例 337
11.4 数据管道编程 339
11.4.1 建立数据管道对象 340
11.4.2 数据管道编程方法和实例 341
11.5 文档应用和数据库的结合 347
11.5.1 RichTextEdit控件 347
11.5.2 RichTextEdit控件中输入域的作用 350
11.5.3 预览和打印文档 351
11.5.4 在文档中使用数据库中的数据 352
11.5.5 RichText风格的数据窗口 353
11.6 习题 354