当前位置: 代码迷 >> 其他开发语言 >> pb连接两个数据库有关问题
  详细解决方案

pb连接两个数据库有关问题

热度:6228   发布时间:2013-02-26 00:00:00.0
pb连接两个数据库问题
用pb连接oracle 和 sqlserver 数据库 建立了一个透明网关 但是在运行时还是连接不到一起 提示EAServer Exception:ORA-02019:未找到远程数据库的连接说明 这个问题怎么解决啊 还有怎么设置么?

------解决方案--------------------------------------------------------
一、引言
  近几年随着计算机在各个行业的逐渐推广和普及,数据库应用也有了很大的发展。各种数据库管理系统DBMS也被纷纷引入国内,如: 
Informix、Sybase、Oracle、IBMDB2、Ingres等。在方便用户进行选择的同时,也带来了一些新的问题。例如一个大的水电发电厂,由于历 
史和行业渐进性发展等原因,它的各部门分别采用Foxpro,Sybase,Oralce开发了一些应用,而现在,其计算机管理要由部门级上升到企业 
级,那么为了减少开发费用,保护在已有数据库系统上的投资,就必须面对如何处理多个数据源的问题。在这方面,基于客户端的开发了工 
具Powerbuilder当为首要的选择。
  
  二、技术关键
  Powerbuilder是美国Powersoft公司的产品。它是一种完全按照客户/服务器体系结构研制的开发系统。它除了能与内置的Watcom数据库 
连接外,还可以连接Server端众多的大型数据库,如:Informix、Sybase、Oracle、IBMDB2等。Powerbuilder功能强大,它提供数据窗口这 
个智能对象,利用该对象可以查询和更新数据库而无需有SQL编程。数据窗口操纵的数据源可以是表,视图,存储过程以及外部数据等几种类 
型。在同一个窗口上,几个不同的数据窗口还可以同时对不同的数据库系统进行操作。另外,Powerbuilder还向用户提供了功能强大的 
Powerscript语言,该语言类似于C语言,不但提供了400多个内部函数,而且定义了调用WindowsAPI函数的接口。通过数据窗口和 
Powerscript语言的有机结合,利用它们为每个数据库连接定义一个事物对象,并用不同的事物对象分别操作不同的数据库,从而实现动态
操作多个数据源的工作。其示意为图一。
  下面的程序介绍动态地往Oracle7和SybaseSQLServer 库中分别插入一条记录的方法:
  TransactionSQLServerTrans   //说明SQLServer的事物对象
  SQLCA.DBMS ″OR7″    //设置数据库为Oracle7
  SQLCA.Logid ″WU″    //设置用户名为“WU”
  SQLCA.Logpass ″AW″    //设置口令为“AW”
  SQLCA.servername ″T:scosysv:orac″   //设置服务器名
  CONNECT;
  SQLServer?TransCRE?ATETRANSACTION    //创建SQLServer事物对象
  SQLServerTrans.DBMS ″SYBASE″    //设置数据库为Sybase
  SQLServerTrans.Logid ″LX″    //设置用户名为“LX”
  SQLServerTrans.Logpass    //设置口令为空
  SQLServerTrans.servername ″SYBASE″    //设备服务器名
  CONNECTUSINGSQLServerTrans;    //连接到数据库Sybase
  Insertintomaster(master-code)values(′A00001′)
  UsingSQLServeTrans:   //插入到Sybase一条记录
  Insertintoemploy(ename)values(′LX′);   //插入到Oracle一条记录
  DISCONNECT;   //断开到Oracle的连接
  DISCONNECTUSINGSQLServerTrans;   //断开到Sybase的连接
  DESTROYSQLServerTrans;   //消除事物对象SQLServerTrans
  对本程序稍加修改,即可完成对其他数据源的操作。

------解决方案--------------------------------------------------------
帮顶一下!
  相关解决方案