(PHP 4, PHP 5)
mysql_db_query — Переключается на указанную базу данных и посылает запрос
Данное расширение устарело, начиная с версии PHP 5.5.0, и будет удалено в будущем. Используйте вместо него MySQLi или PDO_MySQL. Смотрите также инструкцию MySQL: выбор API и соответствующий FAQ для получения более подробной информации. Альтернативы для данной функции:
- mysqli_select_db() then the query
- PDO::__construct()
$database
, string $query
[, resource $link_identifier
= NULL
] )mysql_db_query() выбирает базу данных и выполняет запрос к ней.
С версии PHP 5.3.0 эта функция считается УСТАРЕВШЕЙ. Крайне не рекомендуется полагаться на эту возможность.
database
Имя базы данных, на которую произойдет переключение.
query
Запрос MySQL.
Данные в запросе должны быть корректно проэкранированы.
link_identifier
Соединение MySQL. Если идентификатор соединения не был указан,
используется последнее соединение, открытое mysql_connect(). Если такое соединение не было найдено,
функция попытается создать таковое, как если бы mysql_connect() была вызвана без параметров.
Если соединение не было найдено и не смогло быть создано, генерируется ошибка уровня E_WARNING
.
Возвращает ресурс результата запроса к MySQL или FALSE
в случае ошибки.
Функция также возвращает TRUE
/FALSE
для
INSERT/UPDATE/DELETE
запросов для индикации успеха/провала.
Версия | Описание |
---|---|
5.3.0 | Функция теперь выдает предупреждение уровня E_DEPRECATED. |
4.0.6 | Данная функция устарела, ее не следует больше использовать. Используйте вместо нее mysql_select_db(), а затем mysql_query(). |
Пример #1 Пример использования альтернативы mysql_db_query()
<?php
if (!$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
echo 'Не удалось подключиться к mysql';
exit;
}
if (!mysql_select_db('mysql_dbname', $link)) {
echo 'Не удалось выбрать базу данных';
exit;
}
$sql = 'SELECT foo FROM bar WHERE id = 42';
$result = mysql_query($sql, $link);
if (!$result) {
echo "Ошибка DB, запрос не удался\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_assoc($result)) {
echo $row['foo'];
}
mysql_free_result($result);
?>
Замечание:
Учтите, что эта функция НЕ переключает соединение обратно к предыдущей базе данных. Другими словами, вы не можете использовать эту функцию, чтобы временно переключиться на другую базу данных и выполнить запрос. Переключиться обратно вам придётся вручную. Крайне рекомендуется использовать синтаксис database.table в SQL-запросах или функцию mysql_select_db(), вместо использования этой функции.