(PHP 4, PHP 5)
mysql_db_query — 选择数据库并执行查询
本函数自 PHP 5.3.0 起已废弃,并且它和整个 MySQL 扩展自 PHP 7.0.0 开始被移除。 可以选择出于活跃开发中的 MySQLi 或 PDO_MySQL 扩展来作为替代。 参见 MySQL:选择 API 指南获取更多信息。用以替代本函数的有:
mysql_db_query() 选择数据库并执行查询。
database
要选择的数据库名。
query
MySQL 查询。
查询中的数据应正确转义。
link_identifier
MySQL
连接。如不指定连接标识,则使用由 mysql_connect()
最近打开的连接。如果没有找到该连接,会尝试不带参数调用
mysql_connect()
来创建。如没有找到连接或无法建立连接,则会生成
E_WARNING
级别的错误。
返回正的 MySQL 结果资源到查询结果,出错时返回 false
。本函数会对
INSERT
/UPDATE
/DELETE
查询返回 true
/false
来指示成功或失败。
示例 #1 替代 mysql_db_query() 示例
<?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);
?>
注意:
注意此函数不会切换回先前连接到的数据库。换句话说,不能用此函数临时在另一个数据库上执行 sql 查询,只能手工切换回来。强烈建议用户在 sql 查询中使用
database.table
语法或 mysql_select_db() 替代此函数。