SQLGetCursorName--Obtener nombre de cursor

Finalidad

Especificación: CLI de DB2 1.1 ODBC 1.0 ISO CLI

SQLGetCursorName() devuelve el nombre de cursor que está asociado al descriptor de sentencia de entrada. Si se establece explícitamente un nombre de cursor mediante una llamada a SQLSetCursorName(), se devuelve este nombre; en otro caso, se devuelve un nombre generado implícitamente.

Sintaxis

SQLRETURN   SQLGetCursorName (
                SQLHSTMT          StatementHandle,  /* hstmt */
                SQLCHAR      *FAR CursorName,        /* szCursor */
                SQLSMALLINT       BufferLength,      /* cbCursorMax */
                SQLSMALLINT  *FAR NameLengthPtr);    /* pcbCursor */

Argumentos de la función

Tabla 64. Argumentos de SQLGetCursorName

Tipo de datos Argumento Uso Descripción
SQLHSTMT StatementHandle entrada Descriptor de contexto de sentencia
SQLCHAR * CursorName salida Nombre del cursor
SQLSMALLINT BufferLength entrada Longitud del almacenamiento intermedio CursorName
SQLSMALLINT * NameLengthPtr salida Número de bytes disponibles para devolver para CursorName

Uso

SQLGetCursorName() devuelve el nombre de cursor que se estableció explícitamente mediante SQLSetCursorName() o, si no se definió ningún nombre, devuelve el nombre de cursor generado internamente por CLI de DB2.

Si se establece explícitamente un nombre de cursor mediante SQLSetCursorName(), se devuelve este nombre hasta que se descarte la sentencia, o hasta que se defina explícitamente otro nombre.

Los nombres de cursor generados internamente comienzan siempre con SQLCUR o SQL_CUR. Los nombres de cursor tienen siempre 18 caracteres o menos y siempre son exclusivos dentro de una conexión.

Códigos de retorno

Diagnósticos

Tabla 65. SQLSTATE de SQLGetCursorName

SQLSTATE Descripción Explicación
01004 Datos truncados. El nombre de cursor devuelto en CursorName es más largo que el valor contenido en BufferLength, y se trunca hasta que su longitud sea de BufferLength - 1 bytes. El argumento NameLengthPtr contiene la longitud del nombre de cursor completo que está disponible para devolver. La función devuelve SQL_SUCCESS_WITH_INFO.
40003 08S01 Error en el enlace de comunicaciones. El enlace de comunicaciones entre la aplicación y la fuente de datos se interrumpió antes de finalizar la función.
58004 Error inesperado del sistema. Error no recuperable del sistema.
HY001 Error de asignación de memoria. CLI de DB2 no puede asignar la memoria necesaria para ejecutar o finalizar la función.
HY010 Error de secuencia de función.

Se llama a la función mientras se produce una operación de datos en ejecución (SQLParamData() o SQLPutData()).

HY013 Error inesperado de gestión de la memoria. CLI de DB2 no puede acceder a la memoria necesaria para ejecutar o finalizar la función.
HY090 Longitud no válida de la serie de caracteres o del almacenamiento intermedio. El valor especificado para el argumento BufferLength era menor que 0.

Restricciones

Ninguna.

Consulta relacionada