如何在 PowerBuilder (v9+) 中创建数据库连接池...

  • ...ODBC?
  • ...SQL 服务器?
  • ...甲骨文?
有帮助吗?

解决方案

不幸的是,至少对于 PB 9,你不能 原生地. 。PB 一直是一个两层开发工具。但是,如果您使用的是从 PB 9 开始的 WebServices 支持,您可以通过在连接池应用程序服务器上调用 WebServices 来绕过此限制。顺便说一句,我还没有玩过 PB 11.5。那里可能会有所不同。

贾森

其他提示

冒着自我推销的风险,这些可能会帮助您开始使用 Oracle:

如果你去 Sybase 手册 (直觉吧?),请参阅您正在查看的版本的《连接到数据库》手册,搜索“池”可能会很有成效。查看 11.5 的本地副本,我可以看到对 SNC (MS) 和 ODBC 的引用。

至于“非本机”方法,我猜 Jason 可能指的是与应用程序服务器的连接池,然后通过它获取数据。

祝你好运。

在 PowerBuilder 版本 9 及更高版本中使用 Oracle 本机驱动程序并连接到 Oracle 9i 及更高版本的数据库时,您可以使用以下命令告诉 Oracle 维护池中的连接: CnnPool='是' 数据库参数:

PB 11.1 文档中的附加信息:http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc33820_1110/html/dbparm/BJEBJADI.htm

我不相信

CnnPool='是'

受到支持 正式 在PB 9中。

我不确定大多数 PB 开发人员是否都熟悉如何处理池。

至少与我使用某些 Java 应用程序服务器的经验相比,ASP.Net 的方法简单且直接。(请不要对最后一句话发起口水战,我说的是我的经历)。

我编写了一个“服务器”应用程序,该应用程序接收为 ds.retrieve() 和 ds.update() 执行的 PB 数据存储,并将数据传递回客户端 PB 应用程序。这是一种打球的方式。服务器应用程序将打开多个连接...我在 PB 8 中做到了这一点(某处有一本书)。我不会推荐这种方法......很多代码。

在 PB 11.x 中,您应该考虑一些很酷的新方法。

@杰森·沃格尔...

你说我做不到 原生地 ……那么还有其他方法吗?

/* 声明为实例变量*/

n_to_server i_to_server //事务对象替代SQLCA,i_to_server是自定义名称,n_to_server也是如此

/* 实例化连接对象*/

i_to_server =创建事务//在n_to_server的实例变量中声明

i_to_server.DBMS =“ODBC”

i_to_server.AutoCommit = TRUE

i_to_server.DBParm = "ConnectString='DSN=SourceServer;UID=用户名;PWD=密码'"

使用 i_to_server 连接;

选择 @@trancount INTO :li_TranCount

来自系统对象

WHERE 名称 = 'sysobjects'

使用 i_to_server ;//在不使用SQLCA的事务中必须有USING(本机事务)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top