目录
第一章 Client-Library概述
1.1客户/服务器体系结构
1.1.1客户的种类(Types of Clients)
1.1.2服务器的种类(Types of Servers)
1.2Open Client和Open Server产品
1.2.1SYBASE Open Client
l.2.2SYBASE Open Server
1.2.3Open Client和Open Server调用的编程接口
1.2.4Open Client 函数库
1.3SYBASE系统11的Open Client
l.3.1SYBASE系统11Open Client包括的产品
1.3.2Client-Library与DB-Library比较
1.4环境设置
1.4.1接口(interfaces)文件
1.4.2环境变量
1.4.3localesdat文件
1.5查找一个SQL Server并使用isql与之连接
1.6样例程序说明
第二章 编程基础
2.1头文件、库文件、编译文本
2.1.1头文件
2.1.2库文件
2.1.3编译文本
2.2控制结构
2.2.1控制结构CS―CONTEXT,CS-CONNECTION,CS-COMMAND
2.2.2三者的继承关系
2.2.3控制结构属性
2.3数据类型
2.4编写一个最简单的CT-Library的应用程序
2.4.1分配环境结构空间
2.4.2初始化函数库
2.4.3分配联接结构
2.4.4设置用户名及口令
2.4.5建立联接
2.4.6关闭联接
2.4.7释放环境结构空间
2.4.8例程说明
第三章 向SQL Server发送命令
3.1第二章中的样例程序介绍(分三个子过程)
3.2分配CS_COMMAND结构,向SQL Server发送命令
3.2.1分配CS_COMMAND结构
3.2.2设置或读取CSCOMMAND结构属性值
3.3初始化、发送、执行命令
3.3.1命令的概念
3.3.2基本步骤
3.4关闭联接、释放资源
3.4.1关闭联接
3.4.2释放资源
第四章 错误及消息处理
4.1客户消息、服务器消息和CS-Library消息
4.1.1客户消息
4.1.2服务器消息
4.1.3CS-Library消息
4.2错误及消息处理的两种方式
4.3定义安装回叫程序处理消息及错误信息
4.3.1定义客户消息回叫程序
4.3.2安装客户消息回叫程序
4.3.3定义服务器消息回叫程序
4.3.4安装服务器消息回叫程序
4.3.5定义CS-Library消息回叫程序
4.3.6安装CS-Library消息回叫程序
4.4样例程序
4.4.1将三个回叫程序写入名为handler.c的文件
4.4.2修改编译文本
4.4.3修改主程序中initdb()子过程
第五章 普通行的处理
5.1概述.
5.2完成与Server的联接
5.2.1对于各种不同类型的结果,建立switch循环
5.2.2ct-results()的参数
5.3返回代码与结果类型
5.3.1返回代码与结果类型的图示
5.3.2关于某些结果类型
5.3.3关于返回代码
5.4可读取的结果类型
5.4.1结果类型图示
5.4.2对于不同类型的结果采取的方法
5.5不同的结果类型
5.5.1调用ct-resu1ts()处理命令产生的各个结果类型
5.5.2某些命令会产生多种结果类型
5.5.3进一步的例子
5.6程序:不同的结果类型
5.7流程图
5.8得到列的个数
5.9把列捆绑到变量
5.10接收转换数据的缓冲区
5.11转换不同的数据类型(普通的数据类型转换)
5.12CS-DATAFMT结构
5.13设置CS-DATAFMT
5.13.1映射到字符串
5.13.2映射到其他数据类型
5.14程序:把列捆绑到程序变量
5.15流程图
5.16取数据
5.17程序:取出并打印每一行
5.18取消不需要的结果
第六章 普通行的描述
6.1得到结果集的信息
6.1.1得到简单“数字”信息
6.1.2用法
6.1.3ct-res-info()的参数
6.2打印“涉及”的行数
6.3得到结果集的信息
6.3.1调用ctdescribe()得到结果集中列的某些特有信息
6.3.2ct_describe()把关于列的信息存入CSDATAFMT
6.3.3ct_describe()的参数
6.4ct_describe()设置CS_DATAFMT结构
6.4.1ct_describe()设置CSDATAFMT结构
6.4.2CSDATAFMT的描述
6.5设置CS DATAFMT的例子
6.5.1结果集的信息
6.5.2cs_describe()设置的CS_DATAFMT结构
6.5.3cstypes.h中描述数据类型的信息
6.6建立CSDATAFMT结构的数组
6.7建立CS_DATAFMT结构的数组(续)
6.7.1建立一个循环
6.7.2fprintf语句的结果
6.8总结
6.9程序:打印列名和结果
6.10得到计算结果的信息
6.10.1举例
6.10.2概述
6.11得到计算结果的信息(续一)
6.11.1计算行的某些信息
6.11.2用法
6.11.3例子
6.11.4ct_compute_info()的参数
6.12得到计算结果的信息(续二)
6.12.1get_aggregate_name()
6.12.2举例
6.13程序:打印计算结果信息
6.14更好地控制存取数据
6.15ct_get_data()
6.15.1用法
6.15.2参数
6.15.3目的
6.16cs_convert()
6.16.1用法
6.16.2参数
第七章 运行存储过程
7.1存储过程
7.2存储过程的优点
7.3存储过程的范例
7.4处理存储过程特有的结果
7.4.1存储过程返回的特殊结果
7.4.2举例
7.4.3在循环中调用ct_results()
7.5返回代码和返回类型
7.5.1运行存储过程后的返回代码和结果类型
7.5.2在循环中调用ct_results()
7.6程序:处理输出参数和返回状态
7.7SQL Server向SQL Server发送RPC
7.7.1图示
7.7.2高效的通讯
7.7.3RPC命令
7.8Client-Library向SQL Server发送RPC
7.8.1图示
7.8.2RPC的优点
7.8.3Client-Library函数调用
7.9RPC的优点
7.10发送RPC命令的步骤
7.11向SQL Server发送RPC信息(不带参数)
7.12向RPC信息增加参数
7.12.1利用ct_param()发送所需数量的参数
7.12.2ct_param()的参数
7.13对变量作数据类型转换
7.14以“本来的”格式传送参数
7.14.1从字符到整型的转换
7.14.2从字符串转换到日期型
7.15为cs_convert()得到c0ntext指针
7.16总结
7.17程序:RPC的一般处理过程
第八章 动态SQL
8.1动态SQL的概述
8.1.1概述
8.1.2动态SQL与存储过程的比较
8.2T-SQL与动态SQL的比较(以“insert”为例)
8.2.1利用T-SQL重复执行insert
8.2.2利用动态SQL重复执行insert
8.3动态SQL的三个阶段
8.4准备SQL语句
8.5执行SQL语句
8.6释放SQL语句占用的资源
8.7总结
8.8程序:动态插入记录
8.9动态SQL的其他功用
第九章 只读游标
9.1游标的概念
9.1.1什么是游标(cursors)
9.1.2游标的基本操作
9.2客户端游标和服务器端游标
9.2.1客户端(Client-side)游标
9.2.2服务器端(Server-side)游标
9.3比较T-SQL语言游标和CT-Library中的游标
9.4使用游标的优点.
9.5使用只读游标的基本步骤
第十章 可修改游标
10.1使用可修改游标的基本步骤
10.2重定位游标的当前位置
10.3重定位游标的基本步骤
第十一章 读写文本/图像字段
11.1文本/图像数据类型的存储方式
11.1.1什么是文本(text)/图像(image)数据类型
11.1.2文本/图像数据类型的存储方式
11.2读取文本/图像字段的值
11.2.1CS-IODESC结构
11.2.2读取文本/图像字段的值
第十二章 批数据拷贝
12.1什么是BULK-Library/C
12.2使用BULK-Library/C编写批数据拷贝程序的两种数据流向
12.3编写BULK-Library/C应用程序前的准备工作
12.3.1头文件bkpublic.h
12.3.2修改编译脚本
12.3.3将数据库″selectint0/bulkcopy"选项设为true
12.4编写批数据拷入程序的基本步骤
附录A Sybase Open Client产品附带的样例程序
附录B Client-Library应用的程序框架
附录C DB-Library和Client-Library
附录D Client-Library CS-Library和Bulk-Copy Library例程列表
· · · · · · (
收起)