规范: | DB2 CLI 1.1 | ODBC 1.0 | ISO CLI |
SQLGetCursorName() 返回与输入语句句柄相关联的游标名。如果先前已通过调用 SQLSetCursorName() 显式设置了游标名,则会返回此名称;否则,将返回隐式生成的名称。
语法
SQLRETURN SQLGetCursorName ( SQLHSTMT StatementHandle, /* hstmt */ SQLCHAR *FAR CursorName, /* szCursor */ SQLSMALLINT BufferLength, /* cbCursorMax */ SQLSMALLINT *FAR NameLengthPtr); /* pcbCursor */
函数自变量
数据类型 | 自变量 | 使用 | 描述 |
---|---|---|---|
SQLHSTMT | StatementHandle | 输入 | 语句句柄 |
SQLCHAR * | CursorName | 输出 | 游标名 |
SQLSMALLINT | BufferLength | 输入 | CursorName 缓冲区的长度 |
SQLSMALLINT * | NameLengthPtr | 输出 | 可为 CursorName 返回的字节数 |
用法
SQLGetCursorName() 返回用 SQLSetCursorName() 显式设置的游标名,或者,如果未设置任何名称,则它返回 DB2 CLI 内部生成的游标名。
如果使用 SQLSetCursorName() 显式设置了一个名称,则在删除语句之前,或在设置另一显式名称之前,返回此名称。
内部生成的游标名总是以 SQLCUR 或 SQL_CUR 开始。游标名总是不超过 18 个字符,且在连接中总是唯一的。
返回码
诊断
表 65. SQLGetCursorName SQLSTATE
SQLSTATE | 描述 | 解释 |
---|---|---|
01004 | 数据被截断。 | CursorName 中返回的游标名比 BufferLength 中的值要长,被截断为 BufferLength - 1 个字节。NameLengthPtr 自变量包含可返回的完整游标名的长度。此函数返回 SQL_SUCCESS_WITH_INFO。 |
40003 08S01 | 通信链路故障。 | 函数尚未完成,应用程序与数据源间的通信链路就失效了。 |
58004 | 意外系统故障。 | 不可恢复的系统错误。 |
HY001 | 内存分配失败。 | DB2 CLI 无法分配支持函数的执行或完成所需的内存。 |
HY010 | 函数顺序错误。 |
执行“处理数据”的操作(SQLParamData() 或 SQLPutData())时调用了该函数。 |
HY013 | 发生意外的内存处理错误。 | DB2 CLI 无法访问支持函数的执行或完成所需的内存。 |
HY090 | 字符串或缓冲区长度无效。 | 对 BufferLength 自变量指定的值小于 0。 |
限制
无。
相关参考