ifx_lo_readwithseek() 函数执行查找操作,然后从打开的智能大对象中读取数据。
语法
ifx_lo_readwithseek(lofd, buf, offset, whence)
参数
该函数接受以下参数。
参数
类型
用于
描述
lofd
SQL_INTEGER
输入
智能大对象文件描述符
buf
SQL_CHAR
输出
指向函数将读取数据的字符缓冲区的指针
offset
SQL_BIGINT
输入
从起始查找位置偏移的偏移量,以字节为
单位。使用 SQL_C_LONG 或
SQL_C_SHORT,而不是使用缺省的
GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 165 -
参数
类型
用于
描述
GBase 8s ODBC Driver C 数据类型
SQL_C_CHAR 作为 offset。
whence
SQL_INTEGER
输入
开始查找位置。可能值为:
LO_SEEK_CUR
当前查找位置在智能大对象中的位置
LO_SEEK_END
智能大对象的末尾位置
LO_SEEK_SET
智能大对象的起始位置
用法
ifx_lo_readwithseek() 函数执行查找操作并读取来自智能大对象的数据。
该读取从 offset 和
whence 参数指定的查找位置开始。
ifx_lo_readwithseek() 函数读取数据的 cbValueMax 字节。cbValueMax 是
SQLBindParameter() 和 SQLBindCol() 的输入参数。buf 或 cbValueMax 的大小不能超过
2 GB。要读取大于 2 千兆字节的智能大对象,请在 2-GB chunk 中读取。
ifx_lo_readwithseek() 函数将数据读到 buf 指向的用户定义的缓冲区。
如果 SQLBindParameter() 或 SQLBindCol() 返回 SQL_SUCCESS,则 pcbValue(这些函
数的一个参数)包含函数从智能大对象中读取的字节数。如果 SQLBindParameter() 或
SQLBindCol() 返回 SQL_SUCCESS_WITH_INFO,
则 pcbValue 包含可用于从智能大对象
读取的字节数。