(PHP 4, PHP 5)
mysql_db_query — Selects a database and executes a query on it
$database
, string $query
[, resource $link_identifier
= NULL
] )mysql_db_query() selects a database, and executes a query on it.
This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.
database
The name of the database that will be selected.
query
The MySQL query.
Data inside the query should be properly escaped.
link_identifier
The MySQL connection. If the
link identifier is not specified, the last link opened by
mysql_connect() is assumed. If no such link is found, it
will try to create one as if mysql_connect() was called
with no arguments. If no connection is found or established, an
E_WARNING
level error is generated.
Returns a positive MySQL result resource to the query result,
or FALSE
on error. The function also returns TRUE
/FALSE
for
INSERT/UPDATE/DELETE
queries to indicate success/failure.
Version | Description |
---|---|
5.3.0 | This function now throws an E_DEPRECATED notice. |
4.0.6 | This function is deprecated, do not use this function. Use mysql_select_db() and mysql_query() instead. |
Example #1 mysql_db_query() alternative example
<?php
if (!$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
echo 'Could not connect to mysql';
exit;
}
if (!mysql_select_db('mysql_dbname', $link)) {
echo 'Could not select database';
exit;
}
$sql = 'SELECT foo FROM bar WHERE id = 42';
$result = mysql_query($sql, $link);
if (!$result) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_assoc($result)) {
echo $row['foo'];
}
mysql_free_result($result);
?>
Note: Suggested alternatives
Use of this extension is discouraged. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API for more information.
Alternatives to this function include:
- mysqli_select_db() then the query
- PDO::__construct()
Note:
Be aware that this function does NOT switch back to the database you were connected before. In other words, you can't use this function to temporarily run a sql query on another database, you would have to manually switch back. Users are strongly encouraged to use the database.table syntax in their sql queries or mysql_select_db() instead of this function.