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

MySQL创建含ENUM字段的people表触发1064语法错误,请求排查

解决MySQL创建people表的语法错误问题

我一眼就看出问题所在啦——你的SQL语句里用了中文全角的单引号(‘’),而MySQL只认英文半角单引号(''),这是导致语法报错的核心原因。另外还有几处小细节需要调整,比如部分ENUM定义里的标点格式问题。

修正后的完整SQL语句

CREATE TABLE IF NOT EXISTS people (
    id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
    Lname varchar(20) DEFAULT NULL,
    Fname varchar(20) DEFAULT NULL,
    Gender ENUM('M', 'F'),
    Specialty ENUM('1', '2', '3', '4'),
    Grade ENUM('I', 'J', 'M', 'S'),
    Start_date date DEFAULT NULL,
    PRIMARY KEY (id)
);

错误点拆解

  • 所有ENUM选项的单引号都从中文全角‘’改成了英文半角'',这是SQL语法的硬性要求,数据库无法识别中文标点作为字符串分隔符;
  • 统一了所有标点符号为英文半角格式,避免类似的语法陷阱;
  • 微调了代码换行格式,让语句结构更清晰(不影响执行,仅提升可读性)。

把修正后的语句复制到MySQL中执行,应该就能成功创建people表了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:50:16