SQLColAttribute
功能描述
返回结果集中列的描述符信息。 说明符信息以字符串、描述符相关值或整数值的形式返回。
接口原型
SQLRETURN SQL_API
SQLColAttribute(SQLHSTMT StatementHandle,
SQLUSMALLINT ColumnNumber,
SQLUSMALLINT FieldIdentifier,
SQLPOINTER CharacterAttribute,
SQLSMALLINT BufferLength,
SQLSMALLINT *StringLength,
#if defined(_WIN64) || defined(SQLCOLATTRIBUTE_SQLLEN)
SQLLEN *NumericAttribute
#else
SQLPOINTER NumericAttribute
#endif
)
参数说明
参数名 | 参数说明 |
---|---|
StatementHandle | 语句句柄。 |
ColumnNumber | IRD中要检索字段值的记录的编号。它的参数对应于结果数据的列数,从1开始按列顺序递增排序。列可以按任何顺序描述。列0可以在这个参数中指定,但是除了SQL_DESC_TYPE和SQL_DESC_OCTET_LENGTH之外的所有值将返回未定义的值。 |
FieldIdentifier | 描述符句柄。这个句柄定义了IRD中应该查询的字段(例如,SQL_COLUMN_TABLE_NAME)。 |
CharacterAttribute | 指向缓冲区的指针,如果字段是字符串,则返回IRD中ColumnNumber行的FieldIdentifier字段的值。否则,该字段未被使用。 |
BufferLength | CharacterAttribute指向的缓冲区的大小。 |
StringLength | 指向缓冲区的指针,该缓冲区用于返回CharacterAttribute中可返回的总字节数(不包括字符数据的null终止字节)。 对于字符数据,如果可返回的字节数大于或等于BufferLength,则CharacterAttribute中的描述符信息将被截断为BufferLength减去以空字符结束的字符长度,并由驱动程序以空字符结束。 |
NumericAttribute | 指向一个整数缓冲区的指针,如果字段是数字描述符类型,例如SQL_DESC_COLUMN_LENGTH,则返回IRD中ColumnNumber行的FieldIdentifier字段的值。否则,该字段未被使用。请注意,有些驱动程序可能只写入较低的32位或16位的缓冲区,而保持较高的位不变。因此,应用程序应该在调用此函数之前将该值初始化为0。 |
返回
- SQL_SUCCESS:表示调用正确。
- SQL_SUCCESS_WITH_INFO:表示会有一些警告信息。
- SQL_ERROR:表示比较严重的错误,如:内存分配失败、建立连接失败等。
其他
无。