使用PowerBuilder同时访问多个数据库
来源:互联网 发布:淘宝图片轮播怎么制作 编辑:程序博客网 时间:2024/06/06 07:32
随着网络的延伸和信息系统的不断开发,系统集成面临着如何将分布在不同服务器上的数据库系统集成到一起的问题。某个客户应用可能需要在同一窗口同时访问两个服务器上的两个不同种数据库,PowerBuilder为这种需求提供了令人满意的解决方案。
PowerBuilder 4.0是一套强大的数据库应用系统开发工具,它具有完整的客户/服务器体系结构、面向对象的应用程序开发方法以及可视化的开发环境,因而成为近几年流行的数据库前端开发工具。
随着网络的延伸和信息系统的不断开发,系统集成面临着如何将分布在不同服务器上的数据库系统集成到一起的问题。某个客户应用可能需要在同一窗口同时访问两个服务器上的两个不同种数据库,PowerBuilder为这种需求提供了令人满意的解决方案。
方案一: 通过Transaction Object同时打开多个事务,再通过多个事务存取建立在不同数据库上的DataWindows。
方案二: 通过数据管道(DataPipeLine)将其它数据库上基表中的数据传送到主数据库上,对数据管道还可加上过滤条件,以便只传送需要的数据。
具体实现方案
本文在一个窗口上的两个按钮具体显示方案一和方案二。在这个窗口中的三个事件脚本(Scripts)如下:
(1)打开窗口事件脚本(Open for W_LC)
Transaction lc_oracle,lc_ingres
∥初始化oracle数据库事务
lc_oracle=CREATE transaction
lc_oracle.DBMS ="OR7 ORACLE v7.x"
lc_oracle.Database ="ora7"
lc_oracle.logId ="Ljb"
lc_oracle.logPassword ="Ljbljb"
lc_oracle.ServerName ="@t:132.147.111.8" ∥初始化ingres数据库事务
lc_ingres=CREATE transaction
lc_ingres.DBMS ="ODBC"
lc_ingres.Database ="xxzx2"
lc_ingres.userid ="nt"
lc_ingres.dbpass ="ingres"
lc_ingres.dbparm ="ConnectString='DSN=kfml;&
SRVR=nt;DB=xxzx2;OPTS=;UID=ingres'"
(2)同时访问两个数据库的脚本(Clicked for CB_MutiDBMS) ∥访问 oracle数据库
connect using lc_oracle;
dw_oracle.SetTrans(lc_oracle)
dw_oracle.retrieve()
∥访问ingres数据库
connect using lc_ingres;
dw_ingres.SetTrans(lc_ingres)
dw_ingres.retrieve()
(3)数据管道的脚本(Clicked for CB_PipeLine)
/*说明一个支持数据管道的对象,lc_object是在
User Object Painter中定义的PipeLine对象*/
lc_object lcl_object
∥启动数据管道
integer start_result
connect using lc_oracle;
connect using lc_ingres;
lcl_object=create lc_object
/*lc_pipeline是在PipeLine Painter中定义的数据管道,以便将ingres基表中的数据传送到oracle数据库基表中*/
lcl_object.dataobject="lc_pipeline"
start_result=lcl_object.start &(lc_oracle,lc_ingres,dw_oracle)
If start_result=-3
messagebox("数据管道错","此基表已存在");
return
end if
disconnect using lc_oracle;
disconnect using lc_ingres;
小结
PowerBuilder不仅为应用系统的快速开发提供了强有力的支持工具,而且为30多种数据库提供了直接连接或ODBC连接,再加上Transaction Object和Data PipeLine同时存取多个数据库的功能,为大中型企业在信息系统建设的中后期完成系统的互连提供了简捷有效的方法。
很老的资料了,但有时也会用得着。- 使用PowerBuilder同时访问多个数据库
- Spring中同时使用多个数据库
- Spring中同时使用多个数据库
- 让iBatisNet同时使用多个数据库
- Spring中同时使用多个数据库
- 数据库powerbuilder使用
- 多个线程同时访问资源
- Semaphore 允许多个线程同时访问
- 同时使用多个class
- Power Builder同时连接多个数据库
- Power Builder同时连接多个数据库
- Power Builder同时连接多个数据库
- PHP同时连接多个mysql数据库
- yii同时连接多个数据库
- CodeIgniter框架同时连接多个数据库
- 数据库多个session同时更新一行
- 同时存储多个数据到数据库
- 数据库同时更新多个字段
- java上传求求的方法
- 安卓训练-开始-使用 Fragment 构造动态 UI-构造灵活的 UI
- Velocity案例(简单的Hello)
- 南京至烟台威海首通高铁
- 分享一个maven的快速参考资料
- 使用PowerBuilder同时访问多个数据库
- tdm、atm、ip承载区别
- CXF报文日志记录
- 安卓训练-开始-使用 Fragment 构造动态 UI-与其他 Fragment 通信
- php字符串加密解密
- 【DP】HDU-1058 Humble Numbers
- Xcode的后期真机调试
- swfupload帮助文档
- #ifdef、#if defined、#ifndef的使用