PHP 8.2.0 Released!

mysqli::select_db

mysqli_select_db

(PHP 5, PHP 7, PHP 8)

mysqli::select_db -- mysqli_select_db选择用于数据库查询的默认数据库

说明

面向对象风格

mysqli::select_db(string $dbname): bool

过程化风格

mysqli_select_db(mysqli $link, string $dbname): bool

针对本次数据库连接用于数据库查询的默认数据库。

注意:

本函数应该只被用在改变本次链接的数据库,你也能在mysqli_connect()第四个参数确认默认数据库。

参数

mysql

仅以过程化样式:由mysqli_connect()mysqli_init() 返回的 mysqli 对象。

dbname

数据库名称

返回值

成功时返回 true, 或者在失败时返回 false

范例

示例 #1 mysqli::select_db() example

面向对象风格

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""test");

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

/* return name of current default database */
if ($result $mysqli->query("SELECT DATABASE()")) {
    
$row $result->fetch_row();
    
printf("Default database is %s.\n"$row[0]);
    
$result->close();
}

/* change db to world db */
$mysqli->select_db("world");

/* return name of current default database */
if ($result $mysqli->query("SELECT DATABASE()")) {
    
$row $result->fetch_row();
    
printf("Default database is %s.\n"$row[0]);
    
$result->close();
}

$mysqli->close();
?>

过程化风格

<?php
$link 
mysqli_connect("localhost""my_user""my_password""test");

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

/* return name of current default database */
if ($result mysqli_query($link"SELECT DATABASE()")) {
    
$row mysqli_fetch_row($result);
    
printf("Default database is %s.\n"$row[0]);
    
mysqli_free_result($result);
}

/* change db to world db */
mysqli_select_db($link"world");

/* return name of current default database */
if ($result mysqli_query($link"SELECT DATABASE()")) {
    
$row mysqli_fetch_row($result);
    
printf("Default database is %s.\n"$row[0]);
    
mysqli_free_result($result);
}

mysqli_close($link);
?>

以上例程会输出:

Default database is test.
Default database is world.

参见

add a note

User Contributed Notes 1 note

up
0
Aravind Padmanabhan.
4 months ago
I have observed that sometimes .. directly using the db parameter in mysql::__construct doesn't work and it throws up a mysql server gone away error.

However if we first do a mysql connection without db and then use the mysql_select_db then it works.
To Top