返回首页

gbase数据、南大通用产品文档:GBase8slvarchar 指针和 var binary 库函数

更新日期:2024年09月11日

下列库函数在 GBase 8s ESQL/C 中可用与范围 lvarchar 指针或 var binary 主机变
量的数据缓冲区。

函数名
意义
请参阅
ifx_var_alloc()
为数据缓冲区分配内存。
ifx_var_alloc() 函数
ifx_var_dealloc(
)
释放数据缓冲区的内存。
ifx_var_dealloc() 函

ifx_var_flag()
确定是 ESQL/C 还是应用程序处理数
据缓冲区的内存分配。
ifx_var_flag() 函数
ifx_var_getdata(
)
返回数据缓冲区的内容。
ifx_var_getdata() 函

ifx_var_getlen()
返回数据缓冲区的长度。
ifx_var_getlen() 函

ifx_var_isnull()
检查数据缓冲区中的数据是否为空。
ifx_var_isnull() 函

ifx_var_setdata(
)
设置数据缓冲区的数据。
ifx_var_setdata() 函

ifx_var_setlen()
设置数据缓冲区的长度。
ifx_var_setlen() 函

ifx_var_setnull(
)
将数据缓冲区中的数据设置为空值。
ifx_var_setnull() 函


这些 lvarchar 指针和 var binary 还是在 sqlhdr.h 头文件中定义,
因此您不需要在您
的使用它们的 GBase 8s ESQL/C 程序中包含特定的头文件。

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 281 -

failed to write result for client 报错问题
问题现象
com.gbase.jdbc.exceptions.jdbc4.CommunicationsException:
Communications
link
failure
原因分析
在网络环境较差场景下,或通过JDBC 等开发接口获取结果集时增加了处理逻辑造
成耗时较长时,
如JAVA 程序遍历RESULT 后再将结果写到文件中,
JAVA 写文件的过
程可能超过30 秒,就会出现连接失败问题。
解决方法
通过调大gcluster_send_client_data_timeout 参数规避

文档版本(2022-01-18)
南大通用数据技术有限公司
-
181 -
6 附录

ifx_rc_describe() 函数返回有关行或集合数据类型的信息或行或集合中元素的信息。
语法
ifx_rc_describe(rchandle, fieldnum, fieldname, typecode,
columnsize, decdigits, nullable, typename, typeowner)
参数
该函数接受以下参数。
参数
类型
用于
描述

GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 181 -
参数
类型
用于
描述
rchandle
HINFX_RC
输入
行或集合缓冲区的句柄
fieldnum
SQL_SMALLINT
输入
字段数。
如果该值为 0,
则函数返回整
个行或集合的信息。
对于集合,
任何不
是 0 的值会使函数返回集合中元素的
信息。
对于行,
该值指定函数返回信息
的元素。
fieldname
SQL_CHAR
输出
字段名称。
该函数仅当元素在行中时返
回此值。
typecode
SQL_SMALLINT
输出
元素的 GBase 8s ODBC Driver SQL
数据类型
columnsize
SQL_INTEGER
输出
列大小。
对于字符元素,
该值是列的大
小,以字节为单位。对于数字元素,该
值是精度。
对于其它数据类型,
该函数
不会返回值。
decdigits
SQL_SMALLINT
输出
小数点位数。
对于数字元素,
该值是小
数点后小数位数。杜宇其它数据类型,
该函数不会返回值。
nullable
SQL_SMALLINT
输出
NULL 指示符。值可能为:
SQL_NO_NULLS
SQL_NULLABLE
typename
SQL_CHAR
输出
类型名称。
对于已命名的行,
该值是行
的名称。
对于集合和未命名行,
此函数
不会返回值。
typeowner
SQL_CHAR
输出
类型所有者。
该值是数据类型的所有者
的名称。
该名称的长度不能超出 18 个
字符。
用法
ifx_rc_describe() 函数返回有关行或集合数据类型的信息或行或集合中元素的信息。对于集
合中的元素,该信息与集合中所有元素的信息一致。该函数不会更改查找位置。