powerbuilder 中的 Autocummit 和 SetTransObject()

Autocummit and SetTransObject() in powerbuilder

powerbuilder中的autocummit和SetTransObject()是什么关系,为什么sql服务器是非autocummit模式而oracle是autocummit模式,autocummit的值是如何处理的。 SetTransObject(); 的作用是什么?

TIA :)

SetTransObject是一个数据窗口方法,用于在自身和数据库事务对象(全局trans对象是SQLCA)之间建立连接。通常数据窗口在实例化后很快就会'connected'到trans对象。

Autocommit 是一个连接参数,用于建立事务对象 (SQLCA) 到数据库的连接。此参数控制 PowerBuilder 是在事务范围之内还是之外发出 SQL 语句。

如果该值为真,则数据窗口会在事务范围之外发出 SQL 语句。在每个成功的 SQL 语句后发出 COMMIT。

如果值为 false,数据窗口会在事务中发出 SQL 语句。 BEGIN TRANSACTION 语句在连接启动时以及在每个 COMMIT 或 ROLLBACK 语句之后发出。

settransobject() 将 Sql 连接详细信息告知 Datawindow,以便在检索和更新时使用指定的 sql 连接和事务对象。 内置事务对象是 SQLCA 。为数据库连接配置其属性。

Autocommit:如果设置为 true,将不需要将 commit 语句放在代码中的 sql 语句之后。如果设置为 false,将需要 commit 语句。这样做是为了鼓励在错误发生时使用事务回滚,在没有错误发生时使用提交。自动提交是 SQLCA 事务对象的一个​​属性。