mysql_select_db
(PHP 4, PHP 5)
mysql_select_db — Выбирает базу данных MySQL
Данное расширение устарело, начиная с версии PHP 5.5.0, и будет удалено в будущем. Используйте вместо него MySQLi или PDO_MySQL. Смотрите также инструкцию MySQL: выбор API и соответствующий FAQ для получения более подробной информации. Альтернативы для данной функции:
- mysqli_select_db()
- PDO::__construct() (раздел о dsn)
Описание
$database_name
[, resource $link_identifier
= NULL
] )Выбирает для работы указанную базу данных на сервере, на который ссылается переданный дескриптор соединения. Каждый последующий вызов функции mysql_query() будет работать с выбранной базой данных.
Список параметров
-
database_name
-
Имя выбираемой базы данных.
-
link_identifier
-
Соединение MySQL. Если идентификатор соединения не был указан, используется последнее соединение, открытое mysql_connect(). Если такое соединение не было найдено, функция попытается создать таковое, как если бы mysql_connect() была вызвана без параметров. Если соединение не было найдено и не смогло быть создано, генерируется ошибка уровня
E_WARNING
.
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Примеры
Пример #1 Пример использования mysql_select_db()
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Не удалось соединиться : ' . mysql_error());
}
// выбираем foo в качестве текущей базы данных
$db_selected = mysql_select_db('foo', $link);
if (!$db_selected) {
die ('Не удалось выбрать базу foo: ' . mysql_error());
}
?>
Примечания
Замечание:
Для обратной совместимости может быть использован следующий устаревший псевдоним: mysql_selectdb()
Смотрите также
- mysql_connect() - Открывает соединение с сервером MySQL
- mysql_pconnect() - Устанавливает постоянное соединение с сервером MySQL
- mysql_query() - Посылает запрос MySQL
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- MySQL Drivers and Plugins
- Оригинальное API MySQL
- mysql_affected_rows
- mysql_client_encoding
- mysql_close
- mysql_connect
- mysql_create_db
- mysql_data_seek
- mysql_db_name
- mysql_db_query
- mysql_drop_db
- mysql_errno
- mysql_error
- mysql_escape_string
- mysql_fetch_array
- mysql_fetch_assoc
- mysql_fetch_field
- mysql_fetch_lengths
- mysql_fetch_object
- mysql_fetch_row
- mysql_field_flags
- mysql_field_len
- mysql_field_name
- mysql_field_seek
- mysql_field_table
- mysql_field_type
- mysql_free_result
- mysql_get_client_info
- mysql_get_host_info
- mysql_get_proto_info
- mysql_get_server_info
- mysql_info
- mysql_insert_id
- mysql_list_dbs
- mysql_list_fields
- mysql_list_processes
- mysql_list_tables
- mysql_num_fields
- mysql_num_rows
- mysql_pconnect
- mysql_ping
- mysql_query
- mysql_real_escape_string
- mysql_result
- mysql_select_db
- mysql_set_charset
- mysql_stat
- mysql_tablename
- mysql_thread_id
- mysql_unbuffered_query
Коментарии
Be carefull if you are using two databases on the same server at the same time. By default mysql_connect returns the same connection ID for multiple calls with the same server parameters, which means if you do
<?php
$db1 = mysql_connect(...stuff...);
$db2 = mysql_connect(...stuff...);
mysql_select_db('db1', $db1);
mysql_select_db('db2', $db2);
?>
then $db1 will actually have selected the database 'db2', because the second call to mysql_connect just returned the already opened connection ID !
You have two options here, eiher you have to call mysql_select_db before each query you do, or if you're using php4.2+ there is a parameter to mysql_connect to force the creation of a new link.
About opening connections if the same parameters to mysql_connect() are used: this can be avoided by using the 'new_link' parameter to that function.
This parameter has been available since PHP 4.2.0 and allows you to open a new link even if the call uses the same parameters.