总序 1
前言 1
第一篇 Sybase预备知识及概述 1
第1章 客户/服务器体系 1
1.1 客户/服务器 1
1.2 客户/服务器体系的逐步完善 2
1.3 Sybase客户/服务器数据库环境 3
1.3.1 Sybase客户/服务器体系的硬件组成 3
1.3.2 Sybase在网络环境上的软件 3
1.3.3 Sybase客户/服务器体系的主要优点 4
第2章 Sybase客户/服务器体系产品概述 6
2.2 Sybase客户/服务器体系的两种配置模式 7
2.2.1 两层配置模式 7
2.2.2 三/多层配置模式 8
2.2.3 Sybase产品系列 8
2.3 Sybase System的服务器功能 9
2.3.1 服务器的硬件结构和操作系统 9
2.3.2 数据服务器(Sybase SQL Server) 11
2.3.3 适应性服务器(Adaptive Server) 13
2.3.4 备份服务器(Backup Server) 14
2.3.5 审计服务器(Audit Server) 15
2.3.6 安全SQL服务器(Secure SQL Server) 15
2.3.7 导航服务器(Navigation Server) 17
2.3.8 复制服务器(Replication Server) 18
2.4 Sybase的管理工具 18
2.4.1 SQL Server Manager 18
2.4.2 Sybase Central 19
2.4.3 SQL Server Monitor 19
2.4.4 Inte7rnet Developer Toolkit 20
2.5 在客户/服务器环境中的数据管理 21
2.5.1 高速缓存管理 21
2.5.2 数据存储管理 21
2.5.3 事务日志管理 22
2.5.4 查询性能的增强 22
2.5.5 锁体系结构 23
2.6 Direct CONNECT 23
2.7 Open Client和Open Server 24
第3章 Sybase的安装和连接 26
3.1 服务器的安装 26
3.1.1 安装前准备的事项 26
3.1.2 在Windows NT上安装Sybase 26
3.1.3 Sybase目录管理 31
3.1.4 在UNIX上安装Sybase 31
3.2 安装客户连接 31
3.2.1 在Windows 95上安装客户库 31
3.2.2 进入SQLEDIT编辑界面 32
3.3 启动Sybase的几种方法 33
第2篇 Sybase应用入门 35
第4章 关系数据库与SQL 35
4.1 关系数据库简介 35
4.1.1 关系数据库基本概念 35
4.1.2 完整性约束 36
4.2 Transact-SQL 38
4.3 数据定义语言(DDL) 39
4.4 数据操纵语言(DML) 40
4.4.1 用SELECT从表中检索数据 40
4.4.2 用INSERT向表中增加数据 42
4.4.3 用UPDATE修改表中数据 43
4.4.4 用DELETE从表中删除数据 43
4.5 流程控制语句 43
4.5.1 条件执行语句:IF匛LSE 44
4.5.2 标志语句块语句:BEGIN匛ND 45
4.5.3 返回语句:RETURN 45
4.5.4 条件循环语句:WHILE 46
4.5.5 流程控制语句:BREAK和CONTINUE 47
4.5.6 挂起等待语句:WAITFOR 47
4.5.7 转移语句:GOTO 48
4.5.8 输出语句:PRINT 48
4.5.9 错误提示语句:RAISERROR 49
第5章 数据库和表 51
5.1 创建数据库和表 51
5.1.1 Sybase 中的数据库 51
5.1.2 Sybase中的表 52
5.2 表的分区 57
5.2.1 表分区 58
5.2.2 创建表分区 59
5.2.3 获取已分割对象的有关信息 60
5.2.4 表分割的限制 61
第6章 视图 62
6.1 视图的优点 62
6.2 创建和管理视图 63
6.2.1 用Sybase SQL Server Manager创建视图 63
6.2.2 使用T-SQL创建视图 66
6.2.3 重新命名与删除视图 68
6.3 获取视图信息 68
6.3.1 使用Sybase SQL Server Manager检查视图 68
6.3.2 使用系统过程检查视图 69
6.4 通过视图管理数据 72
6.4.1 从视图中选择数据 73
6.4.2 通过视图插入数据 74
6.4.3 更新视图中的数据 77
6.4.4 从视图中删除数据 78
第7章 索引与键 79
7.1 索引的定义和分类 79
7.1.1 非簇聚索引 79
7.1.2 簇聚索引 79
7.1.3 两种索引的区别 80
7.2 索引的创建 80
7.2.1 用Sybase SQL Server Manager创建索引 80
7.2.2 用T-SQL语句创建索引 83
7.2.3 索引的删除 84
7.3 键的创建 85
7.3.1 使用Sybase SQL Server Manager增加键 85
7.3.2 用T-SQL语句增加键 86
第8章 事务与锁 88
8.1 事务的定义及其标识 88
8.2 事务的使用 88
8.3 事务模式 89
8.4 事务中的出错处理 89
8.5 锁的定义及其类型 92
8.6 锁的检查与进程的删除 93
8.7 事务的隔离级别 94
8.8 锁的添加 95
8.9 死锁及其避免 96
第9章 游标及其应用 97
9.1 游标及使用游标的优点 97
9.2 使用Sybase游标 98
9.2.1 游标的作用域 98
9.2.2 声明游标 100
9.2.3 打开游标 101
9.2.4 取游标 102
9.2.5 关闭游标 103
9.2.6 释放游标 103
9.2.7 游标使用的例子 104
9.3 获得关于游标的信息 108
9.4 使用嵌套的游标 108
9.5 从前端应用程序处理游标 113
第10章 存储过程和系统过程 114
10.1 存储过程及其优点 114
10.1.1 存储过程定义 114
10.1.2 存储过程的优点 114
10.2 创建与使用存储过程 115
10.2.1 使用Sybase SQL Server Manager创建一个存储过程 115
10.2.2 用T-SQL创建存储过程 117
10.2.3 查看、改名和删除存储过程 118
10.2.4 执行已创建的存储过程 118
10.2.5 存储过程中的事务控制 121
10.2.6 嵌套事务 121
10.2.7 嵌套存储过程与保存点 122
10.2.8 存储过程样例 122
10.2.9 服务器游标 124
10.3 系统过程 126
第11章 触发器 128
11.1 触发器的定义及作用 128
11.2 创建触发器 128
11.3 触发器的原理 130
11.4 触发器的具体应用 130
11.5 嵌套的触发器 133
11.6 触发器中的高级应用 134
11.7 查看和删除触发器 136
11.8 触发器总结 138
第3篇 应用编程和开发工具 139
第12章 Open Client应用编程基础 139
12.1 Open Client应用程序结构 139
12.2 编程基础 140
12.2.1 头文件和库文件 140
12.2.2 数据类型 141
12.2.3 控制结构 141
12.3 编写Open Client应用程序的基本步骤 143
12.3.1 设置编程环境 143
12.3.2 安装错误和消息处理程序 143
12.3.3 建立到服务器的连接 143
12.3.4 发送命令到服务器 144
12.3.5 处理返回结果 144
12.3.6 结束退出 144
12.4 编写一个简单的Open Client应用程序 144
12.4.1 程序流程 144
12.4.2 程序清单 145
12.4.2 程序说明 149
第13章 发送命令到服务器 150
13.1 发送命令准备 150
13.1.1 分配上下文控制结构 150
13.1.2 分配连接控制结构 151
13.1.3 分配命令结构 153
13.2 发送普通命令 154
13.2.1 初始化命令串 155
13.2.2 定义命令参数 155
13.2.3 发送命令 156
13.2.4 样例程序 157
13.3 发送游标命令 158
13.3.1 游标的概念 158
13.3.2 使用游标的基本步骤 160
13.3.3 样例程序 162
13.4 发送动态SQL命令 166
13.4.1 动态SQL概述 166
13.4.2 使用动态SQL的基本步骤 166
13.4.3 样例程序 168
第14章 处理返回结果 171
14.1 获取返回结果的描述信息 171
14.1.1 获取返回结果的类型 171
14.1.2 获取结果集的信息 172
14.1.3 样例程序 174
14.2 把列捆绑到程序变量 175
14.2.1 执行捆绑操作 175
14.3 读取数据到程序变量 176
14.4 取消不需要的数据 177
14.5 处理返回数据 177
14.5.1 处理返回结果的一般程序结构 177
14.5.2 处理各种类型的结果 179
14.5.3 服务器命令结果和CT-Library命令结果 183
第15章 处理各种错误及消息 184
15.1 基本概念 184
15.1.1 错误和消息 184
15.1.2 错误处理的两种方式 184
15.2 回调方式处理错误 184
15.2.1 处理客户消息和错误信息 185
15.2.2 处理服务器消息和错误信息 186
15.2.3 处理CS-Library消息和错误信息 188
15.3 样例程序 190
15.3.1 定义三种消息处理回调程序 190
15.3.2 在主程序中安装消息处理回调程序 191
第16章 文本/图像数据类型 193
16.1 文本/图像数据类型的存储实现 193
16.2 读取文本/图像字段值 193
16.2.1 用分块法读取文本/图像字段 193
16.2.2 样例程序 195
16.3 修改文本/图像字段值 196
16.3.1 修改文本/图像字段值 196
16.3.2 样例程序 197
第17章 编写批量数据拷贝程序 199
17.1 什么是批量数据拷贝 199
17.2 批量数据拷贝程序的基本结构 199
17.2.1 准备编写批量数据拷贝程序 199
17.2.2 简单批量数据拷贝程序的流程 199
17.2.3 批量数据拷贝程序的结构 200
17.3 从数据库表中批量拷出数据的程序 204
第18章 ODBC技术和应用程序开发工具 207
18.1 ODBC概述 207
18.1.1 ODBC体系结构 207
18.1.2 安装ODBC 209
18.1.3 检测ODBC应用程序的连通性 210
18.2 Microsoft Visual Basic 211
18.2.1 Visual Basic数据设计 211
18.2.2 Visual Basic中用ODBC API开发应用程序 214
18.2.3 应用编程举例 214
18.2.4 建立与Sybase的连接 216
18.3 PowerBuilder 216
18.3.1 在PowerBuilder中创建配置文件Profile 216
18.3.2 检验与Sybase的连接 218
18.3.3 Data Windows操作 219
18.3.4 Data Windows缓冲区 223
18.3.5 应用ODBC访问多个数据库 225
18.3.6 PowerBuilder新版本的增强功能 228
第4篇 Sybase高级应用 230
第19章 用户及权限管理 230
19.1 增加新用户 230
19.1.1 增加用户到SQL Server 230
19.1.2 创建组 231
19.2 增加用户到数据库 232
19.3 增加guest用户 233
19.4 改变用户信息及删除用户 234
19.4.1 删除用户和注册名 234
19.4.2 删除和改变用户的组 234
19.4.3 改变缺省数据库 235
19.4.4 别名用户 235
19.4.5 口令的建立和修改 237
19.5. 查询有关用户及权限的信息 237
19.5.1 当前用户和进程信息 237
19.5.2 用户信息 238
19.5.3 有关组的信息 238
19.6 权限管理 238
19.6.1 权限的种类 239
19.6.2 用户的权限 239
19.6.3 系统表的权限 241
19.6.4 系统过程的权限 242
19.6.5 角色扮演 242
19.7 授权和收回授权 243
19.7.1 GRANT和REVOKE的语法 243
19.7.2 GRANT与REVOKE语句的结合使用 244
19.7.3 GRANT与REVOKE语句的冲突 245
19.7.4 有关权限的信息 245
19.8 用作安全机制的视图和存储过程 246
19.8.1 作为安全机制的视图 246
19.8.2 作为安全机制的存储过程 249
19.8.3 所有者链 249
19.8.4 触发器 251
第20章 备份与恢复 252
20.1 备份数据 252
20.1.1 使用SSM执行本地备份 252
20.1.2 用Dump命令来备份数据库 253
20.1.3 执行远程备份 256
20.2 数据库的恢复 257
20.2.1 用SSM来恢复数据库 257
20.2.2 用Transact-SQL命令Load来恢复数据库 257
20.2.3 产生在线数据库 259
20.3 处理跨越多盘磁带的备份和恢复 259
20.4 用BCP成批拷贝 260
20.4.1 BCP的语法 260
20.4.2 用BCP来执行导出 263
20.4.3 用BCP来执行导入 263
第21章 Sybase的复制服务器 265
21.1 Sybase复制服务器的特点 265
21.2 Sybase复制服务器的技术突破 266
21.3 安装Sybase复制服务器 266
21.4 配置复制系统部件 267
21.5 复制服务器的工作过程 268
21.6 使用复制服务器 270
21.7 管理复制服务器 272
21.8 复制服务器应用实例 272
21.9 复制服务器小结 275
第22章 数据仓库 277
22.1 联机分析处理(OLAP)和决策支持系统(DSS) 277
22.2 数据仓库及其组成 278
22.3 多层体系结构 279
22.4 Warehouse Studio 280
22.4.1 集中式数据仓库和数据集市 280
22.4.2 Sybase的数据仓库解决策略 281
22.4.3 Sybase的数据仓库建立方法 281
22.5 数据整合 282
22.6 ASE 11.5的开发数据仓库功能 283
22.6.1 建模和方案设计 283
22.6.2 任务分布和数据存储 283
22.6.3 优化和查询 284
22.6.4 数据仓库管理 285
第5篇 附录 286
附录Ⅰ Sybase SQL Server保留字 286
附录Ⅱ 术语汇编 288
附录Ⅲ 数据库对象的命名规则 301
附录Ⅳ T-SQL命令与函数 309
附录Ⅴ 存储过程简表 331
附录Ⅵ 分类存储过程简表 341