关于mysql_db_query与mysql_query说法错误的是
这属于 MySQL 扩展函数(PHP 的 mysql_* 系列函数),现已被废弃(建议改用 mysqli 或 PDO)。
| 选项 | 错误原因 | 正确说法 |
|---|---|---|
| A | mysql_db_query 和 mysql_query 的返回值不完全相同 | mysql_db_query 成功返回资源号,失败返回 FALSE;mysql_query 对非查询语句(如 INSERT)成功返回 TRUE,失败返回 FALSE。 |
| B | mysql_query 可以临时切换数据库 | 通过 database.table 语法(如 SELECT * FROM db2.users),无需显式切换。 |
| C | mysql_query 不等于 mysql_select_db() + mysql_db_query() | mysql_query 不自动切换数据库,需手动调用 mysql_select_db()。 |
| D | 正确 | mysql_db_query 执行后不会自动切换回原数据库。 |
| 函数 | 作用 | 返回值差异 | 数据库切换行为 |
|---|---|---|---|
mysql_query() | 在当前数据库执行SQL | 查询返回资源号,非查询返回布尔 | 不切换 |
mysql_db_query() | 指定数据库执行SQL | 始终返回资源号或 FALSE | 执行后不切回原库 |
// mysql_query 需要手动切换数据库
mysql_select_db('db1');
mysql_query('SELECT * FROM table1'); // 在db1执行
// mysql_db_query 直接指定数据库
mysql_db_query('db2', 'SELECT * FROM table2'); // 在db2执行,之后仍连接db1 mysql_* 函数行为差异,重点是 数据库切换 和 返回值。 mysqli 或 PDO(如 $pdo->query("USE db2; SELECT ..."))。