# db2_pconnect

(PECL ibm_db2:1.0-1.6.2)

db2_pconnect — Returns a persistent connection to a database

### Description

resource db2_pconnect ( string `$database` , string `$username` , string `$password` [, array `$options` ] )

Returns a persistent connection to an IBM DB2 Universal Database, IBM Cloudscape, or Apache Derby database. For more information on persistent connections, refer to Persistent Database Connections.

Calling db2_close() on a persistent connection always returns `TRUE`, but the underlying DB2 client connection remains open and waiting to serve the next matching db2_pconnect() request.

### Parameters

`database`

  The database alias in the DB2 client catalog.

`username`

  The username with which you are connecting to the database.

`password`

  The password with which you are connecting to the database.

`options`

  An associative array of connection options that affect the behavior of the connection, where valid array keys include:

  `autocommit`

    Passing the DB2_AUTOCOMMIT_ON value turns autocommit on for this connection handle.

    Passing the DB2_AUTOCOMMIT_OFF value turns autocommit off for this connection handle.

  `DB2_ATTR_CASE`

    Passing the DB2_CASE_NATURAL value specifies that column names are returned in natural case.

    Passing the DB2_CASE_LOWER value specifies that column names are returned in lower case.

    Passing the DB2_CASE_UPPER value specifies that column names are returned in upper case.

  `CURSOR`

    Passing the DB2_FORWARD_ONLY value specifies a forward-only cursor for a statement resource. This is the default cursor type and is supported on all database servers.

    Passing the DB2_SCROLLABLE value specifies a scrollable cursor for a statement resource. This mode enables random access to rows in a result set, but currently is supported only by IBM DB2 Universal Database.

### Return Values

Returns a connection handle resource if the connection attempt is successful. db2_pconnect() tries to reuse an existing connection resource that exactly matches the `database` , `username` , and `password` parameters. If the connection attempt fails, db2_pconnect() returns `FALSE`.

### Examples

Example#1 A db2_pconnect() example

In the following example, the first call to db2_pconnect() returns a new persistent connection resource. The second call to db2_pconnect() returns a persistent connection resource that simply reuses the first persistent connection resource.

`<?php
$database = 'SAMPLE';
$user = 'db2inst1';
$password = 'ibmdb2';
$pconn = db2_pconnect($database, $user, $password);
if ($pconn) {
echo "Persistent connection succeeded.";
}
else {
echo "Persistent connection failed.";
}
$pconn2 = db2_pconnect($database, $user, $password);
if ($pconn) {
echo "Second persistent connection succeeded.";
}
else {
echo "Second persistent connection failed.";
}
?>`

The above example will output:

    Persistent connection succeeded.
    Second persistent connection succeeded.

### See Also

- db2_connect()