关于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 ...")
)。