# maxdb_select_db

# maxdb::select_db

(PECL maxdb >= 1.0)

maxdb_select_db -- maxdb::select_db — Selects the default database for database queries

### 说明

maxdb_select_db ( resource `$link` , string `$dbname` ) : bool

The maxdb_select_db() function selects the default database (specified by the `dbname` parameter) to be used when performing queries against the database connection represented by the `link` parameter.

> Note:

> This function should only be used to change the default database for the connection. You can select the default database with 4th parameter in maxdb_connect().

### 返回值

成功时返回 `TRUE`， 或者在失败时返回 `FALSE`。

### 范例

Example #1 面向对象风格

    <?php
    $maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

    /* check connection */
    if (maxdb_connect_errno()) {
       printf("Connect failed: %s\n", maxdb_connect_error());
       exit();
    }

    /* return name of current default database */
    if ($result = $maxdb->query("SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
       $row = $result->fetch_row();
       printf("Default database is %s.\n", $row[0]);
       $result->close();
    }

    /* change db to non existing db */
    $maxdb->select_db("XXXXXXXX");

    /* return name of current default database */
    if ($result = $maxdb->query("SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
       $row = $result->fetch_row();
       printf("Default database is %s.\n", $row[0]);
       $result->close();
    }

    $maxdb->close();
    ?>

Example #2 过程化风格

    <?php
    $link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

    /* check connection */
    if (maxdb_connect_errno()) {
       printf("Connect failed: %s\n", maxdb_connect_error());
       exit();
    }

    /* return name of current default database */
    if ($result = maxdb_query($link, "SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
       $row = maxdb_fetch_row($result);
       printf("Default database is %s.\n", $row[0]);
       maxdb_free_result($result);
    }

    /* change db to non existing db */
    maxdb_select_db($link, "XXXXXXXX");

    /* return name of current default database */
    if ($result = maxdb_query($link, "SELECT SERVERDB FROM USERS WHERE USERNAME='MONA'")) {
       $row = maxdb_fetch_row($result);
       printf("Default database is %s.\n", $row[0]);
       maxdb_free_result($result);
    }

    maxdb_close($link);
    ?>

以上例程的输出类似于：

    Default database is <...>.

    Warning: maxdb_select_db(): -10709 Connection failed (RTE:database not running) <...>

    Warning: maxdb_query(): -10821 Session not connected [] <...>

    Warning: maxdb_close(): -10821 Session not connected [] <...>

### 参见

- maxdb_connect() - Open a new connection to the MaxDB server
- maxdb_real_connect() - Opens a connection to a MaxDB server