PB 中多数据库连接问题

powerscript最主要的特色是方便有效地管理和访问数据库,那么如何将两个不同的数据源同时连接,并在界面上进行展示呢

连接两个数据库,首先要理解PB的五个全局变量之一,SQLCA(SQL Communications Aera),这个是PB自定义的,用来定义连接数据库需要的一些信息,默认是用这个变量进行数据库的连接。

连接多个数据库,就需要定义多个这种变量,例如:SQLCB,SQLCX,随便自己取名字,定义在全局变量中。


创建事务

sqlca=create transaction
sqlcx=create transaction


消亡事务对象

destroy(sqlca)
destroy(sqlcx)


1、连接数据库1
SQLCA.DBMS = "ODBC"
SQLCA.LogPass = ls_dbpassword//你登录数据库的密码
SQLCA.ServerName = ls_dbname//数据库的名字
SQLCA.LogId = ls_dbuser//登录数据库的名字
SQLCA.AutoCommit = False
SQLCA.DBParm = "PBCatalogOwner='" + ls_dbuser + "',DisableUnicode=0"

连接数据库2

sqlcx.DBMS = "ODBC2"
sqlcx.LogPass = ls_dbpassword1  //你登录数据库的密码
sqlcx.ServerName = ls_dbname1  //数据库的名字
sqlcx.LogId = ls_dbuser1  //登录数据库的名字
sqlcx.AutoCommit = False
sqlcx.DBParm = "PBCatalogOwner='" + ls_dbuser1 + "',DisableUnicode=0"
connect using sqlcx;


2、数据窗口控件分配事物对象

例如对应的窗口1数据来自于数据库1 ,分配事物对象格式为SetTRansObject(SQLCA)

例如对应的窗口2数据来自于数据库2,分配事物对象格式为SetTRansObject(SQLCX)

dw_1.SetTRansObject(SQLCA)

dw_2.SetTRansObject(SQLCX)

3 、关于数据库2 的操作 都要使用using sqlcx

例如 Update student
        set  country = 'china'
        where name = :ls_name and age= :ll_age  and id=:ll_id using sqlcx;

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值