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.
(PHP 5, PHP 7)
mysqli::select_db -- mysqli_select_db — Устанавливает базу данных для выполняемых запросов
Объектно-ориентированный стиль
$dbname
) : boolПроцедурный стиль
Устанавливает базу данных, которая будет использоваться при выполнении запросов к базе данных
Замечание:
Эта функция используется только для смены базы данных во время подключения. Вы можете выбрать базу данных, передав её четвёртым параметром в функции mysqli_connect().
link
Только для процедурного стиля: Идентификатор соединения, полученный с помощью mysqli_connect() или mysqli_init()
dbname
Имя базы данных.
Возвращает true
в случае успешного завершения или false
в случае возникновения ошибки.
Пример #1 Пример использования mysqli::select_db()
Объектно-ориентированный стиль
<?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();
}
/* изменяем текущую базу данных на world */
$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);
}
/* изменяем текущую базу данных на world */
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.
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.
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.