©
This document uses PHP Chinese website manual Release
(PHP 5)
mysqli::select_db -- mysqli_select_db — 选择用于数据库查询的默认数据库
面向对象风格
$dbname
)过程化风格
$link
, string $dbname
)针对本次数据库连接用于数据库查询的默认数据库。
Note:
本函数应该只被用在改变本次链接的数据库,你也能在 mysqli_connect() 第四个参数确认默认数据库。
link
仅以过程化样式:由 mysqli_connect() 或 mysqli_init() 返回的链接标识。
dbname
数据库名称
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
Example #1 mysqli::select_db() example
面向对象风格
<?php
$mysqli = new mysqli ( "localhost" , "my_user" , "my_password" , "test" );
if ( mysqli_connect_errno ()) {
printf ( "Connect failed: %s\n" , mysqli_connect_error ());
exit();
}
if ( $result = $mysqli -> query ( "SELECT DATABASE()" )) {
$row = $result -> fetch_row ();
printf ( "Default database is %s.\n" , $row [ 0 ]);
$result -> close ();
}
$mysqli -> select_db ( "world" );
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" );
if ( mysqli_connect_errno ()) {
printf ( "Connect failed: %s\n" , mysqli_connect_error ());
exit();
}
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_select_db ( $link , "world" );
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.
[#1] vortex100 at aol dot com [2015-11-20 05:45:53]
If you are on a shared server and you get the following response from your script:
Fatal error: Call to undefined function: mysqli_connect()
this mean the version of PHP your web host is using does not support mysqli or mysqli is not enabled in PHP.
[#2] hwalker1 at btopenworld dot com [2014-01-02 11:52:29]
Note that in the second example, if the database "world" does not exist, the database selected does not change. You may need to add additional code to ensure that you are connected to the correct database.
[#3] pjasiulewicz at gmail dot com [2011-03-27 14:30:46]
In some situations its useful to use this function for changing databases in general. We've tested it in production environment and it seams to be faster with switching databases than creating new connections.