无法使用 PHP 执行多个 MariaDB 查询
Cannot execute multiple MariaDB queries using PHP
我在 MariaDB 中执行 SQL 查询时遇到了一个小问题。所有 PHP 变量都不为空,我想同时执行两个查询。在 MySQL 中它可以工作,但在 MariaDB 服务器中我不能,因为我收到一个错误,我有一个查询:
UPDATE users SET name = $receivedName, email = $receivedEmail WHERE id = $id1; UPDATE posts SET id = $userid WHERE id = $receivedID
我得到的错误:
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'UPDATE posts SET id = 50 WHERE id = 56 /* /takechange.php */' at line 1
我知道执行分配给单个变量的两个查询不是一个好主意,但目前我几乎无法更改任何代码。我想这不是在 MariaDB 中加入多个查询的方法。你能告诉我如何编辑这个查询吗?
提前致谢。
您需要使用 mysqli Multi Query 或单独执行您的语句。
如您所知,您正在传递多个语句。
PHP Multi Query
上的手册页
Executes one or multiple queries which are concatenated by a
semicolon.
我在 MariaDB 中执行 SQL 查询时遇到了一个小问题。所有 PHP 变量都不为空,我想同时执行两个查询。在 MySQL 中它可以工作,但在 MariaDB 服务器中我不能,因为我收到一个错误,我有一个查询:
UPDATE users SET name = $receivedName, email = $receivedEmail WHERE id = $id1; UPDATE posts SET id = $userid WHERE id = $receivedID
我得到的错误:
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'UPDATE posts SET id = 50 WHERE id = 56 /* /takechange.php */' at line 1
我知道执行分配给单个变量的两个查询不是一个好主意,但目前我几乎无法更改任何代码。我想这不是在 MariaDB 中加入多个查询的方法。你能告诉我如何编辑这个查询吗?
提前致谢。
您需要使用 mysqli Multi Query 或单独执行您的语句。
如您所知,您正在传递多个语句。
PHP Multi Query
上的手册页Executes one or multiple queries which are concatenated by a semicolon.