DM API和OCI编程方式比较
2008-09-03 12:50:56 来源:WEB开发网4. 执行
a) API
API在执行一条语句时,有两种方式:一种是准备后执行;另一种是直接执行。在准备执行时要先调用dm_prepare来准备,随后再调用dm_exec执行准备好的语句。直接执行是调用dm_direct_exec函数,直接用语句作为参数传入该函数里面。
b) OCI
OCI的执行只有一种方式,必需先调用OCIStmtPrepare来准备语句,再调用OCIStmtExecute来执行准备好的语句,当然,OCI和API在执行准备好的语句时,都可以一次准备,多次执行。
5. 结果集绑定
a) API
绑定结果集是客户端的重要功能,在API里面,支持列绑定和行绑定两种方式,并且允许一次性返回多行,但是绑定函数只有一个dm_bind_column函数,它在列绑定时,value参数是实际的缓冲区指针;而在行绑定的情况下给的则是一个偏移值,真正的缓冲区需要通过描述符来设置。行绑定要比列绑定复杂得多,可以参看ODBC的行绑资料来了解详情。在要求一次获取返回多行时,还需要设置语句句柄的DM_ATTR_ROW_ARRAY_SIZE属性值来达到这个目的。dm_bind_column函数的注释如下:
dm_bool
dm_bind_column(
dm_hstmtdmstmt,/*语句句柄*/
unsignedshortcolid,/*结果集列的位置,从1开始*/
unsignedinttype,/*列的达梦服务器数据类型*/
intsql_c_type,/*列的C数据类型*/
void*value,/*数据缓冲区指针*/
dm_int3264len,/*单个值的最大长度*/
dm_int3264*outlen,/*实际的返回长度*/
unsignedshortptr_len/*len_or_ind指针的大小*/
);
下面举一个简单的列绑定例子,该例子中结果集有两列,第一列为整数,第二列为字符串。
- ››DM API和OCI编程方式比较
- ››API之菜单函数
- ››API之控件与消息函数
- ››API之进程和线程函数
- ››API之打印函数
- ››API之位图、图标和光栅运算函数
- ››API之网络函数
- ››API之设备场景函数
- ››API之消息函数
- ››API之文本和字体函数
- ››API文件产生器-javadoc.exe
- ››API解读:Thread
更多精彩
赞助商链接