SQLEndTran--Solicitar COMMIT o ROLLBACK

Finalidad

Especificación: CLI de DB2 ODBC ISO CLI

SQLEndTran() solicita una operación de COMMIT o ROLLBACK para todas las operaciones activas de todas las sentencias asociadas a una conexión.

Sintaxis

SQLRETURN   SQLEndTran       (SQLSMALLINT        HandleType,
                              SQLHANDLE         Handle,
                              SQLSMALLINT        Completion Type);

Argumentos de la función

Tabla 42. Argumentos de SQLEndTran

Tipo de datos Argumento Uso Descripción
SQLSMALLINT HandleType entrada Tipo de descriptor de contexto
SQLHANDLE Handle entrada Descriptor de contexto de conexión.
SQLSMALLINT CompletionType entrada Cómo completar las operaciones activas asociadas a una conexión

Uso

HandleType
Identificador de tipo de descriptor de contexto. Sólo se permite SQL_HANDLE_DBC (descriptor de conexión).

Handle
Descriptor de contexto, del tipo indicado por HandleType.

CompletionType
Uno de los dos valores siguientes:

En modalidad de comprometer de forma manual, SQLEndTran() debe invocarse antes de invocar SQLDisconnect(). Si no se llama a SQLEndTran() antes que a SQLDisconnect(), se retrotraen las operaciones que han actualizado la base de datos (desde que se inició la última transacción).

Cuando se ejecuta una operación de ROLLBACK, se borran todos los descriptores de contexto de sentencia.

Si la aplicación se interrumpe o termina prematuramente durante su utilización en la modalidad manual, se pierden las actualizaciones realizadas a partir del último COMMIT. SQLEndTran() debe invocarse antes de invocar SQLDisconnect().

Códigos de retorno

Diagnósticos

Tabla 43. SQLSTATEs de SQLEndTran

SQLSTATE Descripción Explicació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.
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.
HY014 No hay más descriptores de contexto. CLI de DB2 no puede asignar un descriptor de contexto debido a recursos internos.

Restricciones

Ninguna.

Consulta relacionada