SQLEndTran - 请求 COMMIT 或 ROLLBACK

用途

规范: DB2 CLI ODBC ISO CLI

SQLEndTran() 向与连接相关联的所有语句上的所有活动操作请求 COMMIT 或 ROLLBACK 操作。

语法

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

函数自变量

表 42. SQLEndTran 自变量

数据类型 自变量 使用 描述
SQLSMALLINT HandleType 输入 句柄类型。
SQLHANDLE Handle 输入 连接句柄。
SQLSMALLINT CompletionType 输入 如何完成与连接相关联的活动操作。

用法

HandleType
句柄类型标识。只允许 SQL_HANDLE_DBC(连接句柄)。

Handle
HandleType 所指示的类型的句柄。

CompletionType
下列两个值之一:

在手工落实方式下,必须在调用 SQLDisconnect() 之前调用 SQLEndTran()。如果SQLDisconnect() 之前调用 SQLEndTran(),则会回滚更新数据库的操作(自从启动上一事务后)。

当执行 ROLLBACK 时,将清除所有语句句柄。

如果应用程序在以手工方式进行时过早地崩溃或终止,则自上一次 COMMIT 以来所作的更新就会丢失。必须在调用断开连接之前调用 SQLEndTran()

返回码

诊断

表 43. SQLEndTran SQLSTATE

SQLSTATE 描述 解释
58004 意外系统故障。 不可恢复的系统错误。
HY001 内存分配失败。 DB2 CLI 无法分配支持函数的执行或完成所需的内存。
HY013 发生意外的内存处理错误。 DB2 CLI 无法访问支持函数的执行或完成所需的内存。
HY014 不再有句柄。 因为内部资源问题,DB2 CLI 无法分配句柄。

限制

无。

相关参考