mysql_db_query

(PHP 4, PHP 5)

mysql_db_query选择数据库并执行查询

警告

本函数自 PHP 5.3.0 起已废弃,并且它和整个 MySQL 扩展自 PHP 7.0.0 开始被移除。 可以选择出于活跃开发中的 MySQLiPDO_MySQL 扩展来作为替代。 参见 MySQL:选择 API 指南获取更多信息。用以替代本函数的有:

说明

mysql_db_query(string $database, string $query, resource $link_identifier = NULL): resource|bool

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() 替代此函数。

参见