ACIConnectionPoolCreate()¶
-
ACIConnectionPoolCreate()¶
作用:
初始化连接池
语法:
sword ACISessionPoolCreate ( ACIEnv *envhp,
ACIError *errhp,
ACISPool *spoolhp,
OraText **poolName,
ub4 *poolNameLen,
const OraText *connStr,
ub4 connStrLen,
ub4 sessMin,
ub4 sessMax,
ub4 sessIncr,
OraText *userid,
ub4 useridLen,
OraText *password,
ub4 passwordLen,
ub4 mode );
参数:
- envhp (IN)
ACI的环境句柄,用于创建连接池。
- errhp (IN/OUT)
错误句柄,该接口调用失败时,错误信息会存在该句柄上,调用 ACIErrorGet 获得错误信息。
- poolhp (IN)
一个使用 ACIHandleAlloc 申请过的ACI_HTYPE_CPOOL句柄。
- poolName (OUT)
连接池名字,供其他使用连接池的接口使用。
- poolNameLen (OUT)
连接池名字的长度。
- dblink (IN)
数据库连接字符串。
- dblinkLen (IN)
连接字符串dblink参数的字节长度。.
- connMin (IN)
连接池中最小连接数,必须大于等于0。创建连接池时,会创建该参数指定的连接数,创建之后,池中的连接只在必要的时候才维持。所以,该参数一般设置为应用程序准备同时运行的stmt个数。
- connMax (IN)
连接池中最大连接数,必须大于等于1。当连接数达到这个值后,将不再创建新的连接,获得连接的调用会失败。
- connIncr (IN)
连接每次增长的个数,大于等于0。参数本身没有规定最大值,但是当connIncr+connMin 大于connMax时,会报错。
- poolUsername (IN)
连接池内部需要的私有Session的用户名。
- poolUserLen (IN)
poolUsername的参数字节长度。
- poolPassword (IN)
连接池内部需要的私有Session的密码。
- poolPassLen (IN)
poolPassword的参数的字节长度
- mode (IN)
创建模式,支持ACI_DEFAULT和ACI_CPOOL_REINITIALIZE两种:
- ACI_DEFAULT
默认使用该模式,用于创建连接池。
- ACI_CPOOL_REINITIALIZE
该模式允许用户动态设置连接池属性(比如:connMin, connMax, connIncr ),如果使用该模式,则忽略其它参数。
说明:
OUT参数poolName和poolNameLen包含要在后续 ACIServerAttach 和 ACILogon2 调用中使用的值,以代替数据库名称和数据库名称长度参数。