注册 登录
编程论坛 PowerBuilder

ASA数据库数据保存成功后又丢失

yangqb 发布于 2007-06-29 04:49, 1589 次点击
我使用ASA8.0,pb6.5,当在数据窗口中更新数据成功,查询已显示是更新后的数据,但过一会后数据又返回到更新前的状态,是什么造成的啊,恳求高手帮助。
语句如下:
long li
li=messagebox("","是否提交数据?",exclamation!,YesNoCancel!)
if li=1 and dw_1.update() =1 then
messagebox("提交","提交成功")
commit;
else
messagebox("提交","提交失败")
rollback;
end if
4 回复
#2
路過2007-06-29 08:03

long ll_mod,ll_del,ll_total

// 將未寫入Buffer的資料寫入
IF This.AcceptText() = 1 THEN
// 計算修改和刪除的筆數
ll_mod = This.ModifiedCount( )
ll_del = This.DeletedCount( )
ll_total = ll_mod + ll_del
// 檢查資料是否有異動,判斷是否存檔成功
IF ll_total >= 1 AND This.Update(TRUE, FALSE) > 0 THEN
COMMIT USING SQLCA;
This.ResetUpdate()
This.Object.DataWindow.ReadOnly="Yes"
//**** 存檔成功 (ib_save=True) ****//
ib_save = true
ELSE
ROLLBACK USING SQLCA;
//**** 存檔失敗 (ib_save=False) ****//
ib_save = false
MessageBox("存檔失敗!!", "存檔失敗 , 請重新確認資料是否有更新!",StopSign!)
END IF

//***2000/03/15加上,因為accepttext()傳回值不為1,造成存檔時失敗時,menu仍會改變***
ELSE
//**** 存檔失敗 (ib_save=False) ****//
ib_save = false
MessageBox("存檔失敗!!", "存檔失敗 , 請重新確認資料是否有更新!",StopSign!)
END IF

#3
sam20802007-06-29 12:22
If dw_1.modifiedcount() + dw_1.deletedcount() > 0 Then
If messagebox("系统提示","是否提交数据?",Question!,YesNoCancel!) = 1 Then
If dw_1.update() = 1 then
commit;
messagebox("提交","提交成功")
else
rollback;
messagebox("提交","提交失败")
End If
Else
......
end if
End If
#4
赖蛤蟆2007-06-29 15:25
#5
yangqb2007-06-30 23:27
多谢各位高手大哥!
1