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

通过mysql-shell执行INSERT语句报1064 SQL语法错误问题咨询

错误原因
  • key属于MySQL的内置保留关键字,SQL解析过程中会优先将其识别为语法关键字而非自定义字段名,直接作为字段名使用会触发1064语法错误。
解决方案

方案1:临时兼容(无需修改表结构)

给作为字段名使用的保留字加上反引号(`)包裹,明确告知解析器该内容为自定义字段名,修改后的INSERT语句如下:

INSERT INTO course_metadata_organization 
 (partner, `key`, name) VALUES ('1', 'test', 'Norway');

建议所有字段统一加反引号,可提前规避其他潜在的保留字冲突问题。

方案2:永久修复(修改表结构)

将表中使用保留字的字段重命名为非保留字名称,比如改为course_key、business_key等,修改表结构参考SQL:

ALTER TABLE course_metadata_organization CHANGE COLUMN `key` `course_key` VARCHAR(255) [原有字段的其他属性,如NOT NULL、DEFAULT等];

修改后对应的INSERT语句可直接写普通字段名,不需要额外加反引号:

INSERT INTO course_metadata_organization 
 (partner, course_key, name) VALUES ('1', 'test', 'Norway');

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 13:03:01