pb创建mysql事务_PB连接数据库

这篇博客介绍了如何使用PowerBuilder(PB)连接远程MySQL数据库并进行事务操作。作者强调了数据库连接设置的重要性,包括ODBC或OLE DB数据源、用户名、密码、数据源、数据库名称和超时设置。通过示例代码展示了在连接断开时如何自动重连,并通过计数器展示重试次数,从而确保事务的连续性。
摘要由CSDN通过智能技术生成

数据库的事务连接,以前很少接触,做个东西都是用本地的数据库,没用过远程,数据库事务的连接也都用默认的,所以就造成了对这方面基本知识的不了解,实际上就是很简单东西。

首先得把数据库那边的设置弄好,ODBC也好,OLE DB也好,总之先把数据源建起来。然后就程序中的代码就这么几个东西:

SQLCA.DBMS = "OLE DB"

SQLCA.LogId = gs_logid

SQLCA.LogPass=gs_logpass

SQLCA.AutoCommit = False

SQLCA.dbparm ="PROVIDER='SQLOLEDB',DATASOURCE='"+gs_datasource+"',TimeOut="+string(ltime)+",PROVIDERSTRING='database="+gs_database+"'"

第一行是数据厂商的名称,说白了就是自己的连接方式。然后这几个变量是必须有的:gs_logid用户名,gs_logpass密码(可为空),gs_datasource数据源,gs_database数据库。timeout的值是设置连接数据库的时间。把这几个变量赋值,然后用语句connect using sqlca就可以练到数据库了,不管是远程的还是本地的,数据库都会自动给你搞定,不过数据库的连接是非常耗资源的,如果你数据库没开或网络中断,就很可能造成机器很卡。

那天还编了一个测试程序,是连接到一个远程的数据库,如果断开就计数+1,很简单的一个东西,做了好几遍。其实就是一个timer()事件,让数据库不断的判断连接。

w_testing.setfocus()

int lcount

select count(1) into :lcount from sys_user using sqlca;

if sqlca.sqlcode= 0 then

st_4.text="已连接上"

ib_lastconnect=true

else

if ib_lastconnect=true then

gl_counter++

sle_1.text=string(gl_counter)

w_main.sle_1.text=string(gl_counter)

end if

ib_lastconnect=false

st_4.text="已断开,正在尝试重新连接"

SQLCA.DBMS = "OLE DB"

SQLCA.LogId = gs_logid

SQLCA.LogPass=gs_logpass

SQLCA.AutoCommit =true

SQLCA.dbparm ="PROVIDER='SQLOLEDB',DATASOURCE='"+gs_datasource+"',TimeOut=15,PROVIDERSTRING='database="+gs_database+"'"

disconnect using sqlca;

connect using sqlca;

end if

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值