pb9+oracle8,写入的数据要等到退出程序后才能传到数据库中,请问是什么原因?

时间:2021-09-14 04:32:23
我用pb9+oracle8做了一个程序,连接两个数据库mc和md,有取数据、写入和查询功能。取数据窗口连接md,写入和查询连接mc。
写入语句如下:
......
m=dw_1.RowCount()
dw_1.insertRow(0)
for i=1 to m step 1
d=dw_1.GetItemstring(i,1)
c=dw_1.GetItemnumber(i,2)

//*插入数据*/
insert into zpdj values(....)
using mc;

choose case mc.SQLCode
case 100
messagebox("保存","保存失败,请查找原因!")
case IS<0
messageBox('Database Error',Sqlca.SQLErrText, Exclamation!)
   goto l1
case else
commit;
messagebox("保存","保存成功!")
END CHOOSE
next
......
写入数据保存后提示“保存成功”,而且查询窗口也能查到刚才写入的数据,但是数据库中却没有记录,必须等到退出程序后,数据才能传到数据库中。请问是什么原因,怎样才能让数据实时发送到数据库中?

3 个解决方案

#1


commit using mc; 

#2


创建数据库连接的时候
加上下面这句
SQLCA.AutoCommit = false
这样,你在程序中commit时候,就直接提交了

#3


多谢两位的回复!

#1


commit using mc; 

#2


创建数据库连接的时候
加上下面这句
SQLCA.AutoCommit = false
这样,你在程序中commit时候,就直接提交了

#3


多谢两位的回复!