You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MariaDB执行多表关联UPDATE操作时报1064语法错误如何解决

问题原因

你当前使用的MariaDB版本对老式逗号分隔隐式连接的多表更新写法兼容性不足,因此触发1064语法报错。

修复后的SQL

改用标准显式INNER JOIN写法即可正常执行,代码如下:

UPDATE members m
INNER JOIN pfields_cont p 
ON m.member_id = p.member_id
SET m.member_group_id = 6
WHERE p.field_2 = 'Teacher';

额外说明

  • 上述显式JOIN写法符合SQL标准,兼容所有MariaDB、MySQL版本,可读性也更高
  • 如果你偏好隐式连接写法,只需把要更新的members表放到UPDATE后第一位即可(兼容性弱于显式JOIN,不推荐):
UPDATE members m, pfields_cont p
SET m.member_group_id = 6
WHERE p.member_id = m.member_id
  AND p.field_2 = 'Teacher';

内容的提问来源于stack exchange,提问作者Hilas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 00:45:06