Power Builder同时连接多个数据库

Power Builder同时连接多个数据库

赵韶平

    只 需 设 置 两 个 TRANSACTION对 象 即 可 。
    以 下 为 同 时 连 接 SQL SERVER和 DBF数 据 库 的 示 例 :
    连 接 SQL SERVER:
    SetPointer(HourGlass!)
    //窗 口 居 中
    f_center(this)
    //根 据 sgselect 连 接 不 同 的 套
    string sSelect
    string temp
    sSelect="d_gdzc"+sgselect
    SQLCA.DbParm = ProfileString(gzINIFile,"Database","DbParm","")
    SQLCA.DBMS = ProfileString(gzINIFile,"Database","DBMS","")
    SQLCA.Database = sSelect
    SQLCA.ServerName = ProfileString(gzINIFile,"Database","ServerName","")
    SQLCA.LogId = "sa"
    RegistryGet("HKEY_CURRENT_USER/software/microsoft/windows/currentversion/explorer/g", "a", RegString!,temp )
    f_anencrypt (temp,SQLCA.LogPass)
    SQLCA.AutoCommit = false
    SQLCA.Lock = ProfileString(gzINIFile,"Database","Lock","")
    connect using sqlca;
    
    IF SQLCA.SQLCode <> 0 THEN
    MessageBox("联 接 失 败 ", &
    "不 能 联 接 数 据 库 !(错 误 信 息 :" + SQLCA.SQLErrText+")")
    setpointer(Arrow!)
    RETURN
    halt close
    END IF
    
    定 义 函 数 :
    fuction f_connectdbf(string sdbparm) return any
    string nul //用 于 生 成 null值
    transaction trans_name
    trans_name=create transaction
    trans_name.DBMS = "ODBC"
    //trans_name.Database = "ZWDBF"
    //trans_name.LogId =
    //trans_name.LogPass =
    trans_name.AutoCommit = False
    trans_name.DBParm = sDBParm
    //trans_name.Lock =ProfileString(gzINIFile,"Database","Lock","")
    //trans_name.DbParm =ProfileString(gzINIFile,"Database","DbParm","")
    CONNECT USING trans_name;
    
    IF trans_name.SQLCode <> 0 THEN
    MessageBox("联 接 失 败 ", &
    "不 能 联 接 财 务 数 据 库 ! 请 检 查 财 务 路 径 是 否 正 确 。 (错 误 信 息 :" + SQLCA.SQLErrText+")")
    rollback;
    return setnull(nul)
    else
    return trans_name
    END IF
    
    连 接 FOXPRO数 据 库 ( 同 时 连 接 第 二 个 数 据 库 , 还 可 以 连 接 第 三 、 第 四 个 ) :
    openwithparm(w_disp,"正 在 联 接 DBF卡 片 数 据 库 ...",parent)
    transaction sqldbf
    //用 SQLDBF连 接 财 务 ( 固 资 ) 数 据 库
    sqldbf=f_connectdbf("Connectstring='DSN=gzdbf'")
    //判 断 是 否 联 接 成 功
    if isnull(sqldbf) then
    Messagebox("出 错 ","联 接 DBF固 定 资 产 数 据 库 出 错 ! ")
    end if

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值