为什么MySQL在更新多个表时会抛出'不正确使用UPDATE和LIMIT”错误?

Mary-Kate Olsen
发布: 2024-10-25 06:49:29
原创
933 人浏览过

Why Does MySQL Throw an

在 MySQL 中对多个表错误使用 UPDATE 和 LIMIT

在 MySQL 中使用 JOIN 操作更新多个表时,存在某些限制。其中一项限制是无法使用 LIMIT 子句,如错误消息“UPDATE 和 LIMIT 的使用不正确。”所示。

如何解决问题:

根据MySQL UPDATE文档,“对于多表语法,UPDATE会更新table_references中满足条件的每个表中的行。在这种情况下,不能使用ORDER BY和LIMIT。”

因此,在您提供的代码片段中:

<code class="php">$q = "UPDATE users INNER JOIN contact_info ON contact_info.user_id = users.user_id SET active.users = NULL WHERE (email.contact_info = '" . mysqli_real_escape_string($mysqli, $x) . "' AND active.users = '" . mysqli_real_escape_string($mysqli, $y) . "') LIMIT 1";</code>
登录后复制

要纠正此问题,您必须删除 LIMIT 1 子句。这将导致根据指定条件将更新应用于“users”和“contact_info”表中的所有匹配行。

以上是为什么MySQL在更新多个表时会抛出'不正确使用UPDATE和LIMIT”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!