一、数据库的事务处理简介
在数据库中,所谓事务是指一组逻辑操作单元,使数据从一种状态变换到另一种状态。为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元,当它全部完成时,数据的一致性可以保持,而当这个单元中的一部分操作失败,整个事务应全部视为错误,所有从起始点以后的操作应全部回退到开始状态。
对事务的操作是这样进行的,先定义开始一个事务,然后对数据作修改操作,这时如果提交(COMMIT),这些修改就永久地保存下来,如果回退(ROLLBACK),数据库管理系统将放弃您所作的所有修改而回到开始事务时的状态。 二、PowerBuilder事务对象(Transaction Objects)
事务是PowerBuilder中自动与数据库交互的控制者,是PowerBuilder程序与数据库之间传递信息的一个结构变量,PowerBuilder会在应用开始时建立一个全局的事务对象SQLCA,但是需要指定默认的数据库连接的相关属性,当然,开发者也可以创建自己的事务。 2.1事务的生命周期
使用步骤如下:
1、定义事务对象变量
Transaction ts1
2、创建事务对象,为事务对象变量分配空间
ts1 = Create Transaction
3、指定连接信息
ts1.DBMS=″ORACIE″
ts1.Database=″DatabaseName″
ts1.UserID=″UserID″
ts1.DBpass=″DBpass″
ts1.serverName=″serverName″
ts1.LogID=″LogID″
ts1.Logpass=″Logpass″
如果使用SQLCA连接无需1、2步,但仍需使用本步对连接参数设置。
4、连接数据库
connect using ts1 或connect,使用SQLCA连接
5、建立事务对象与对应数据窗口连接
dw_1.SetTransobject(ts1)
6、取数据、更新数据
dw_1.retrieve()
dw_1.update()
7、提交或回滚事务
COMMIT using ts1
Rollback Using ts1
8、断开连接、释放事务对象变量
Disconnect using ts1
Destrog using ts1
2.2