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

执行SQL插入语句报错Column count doesn't match value count at row 1原因求解

MySQL插入报错问题解答

报错根因

Column count doesn't match value count at row 1 报错的核心逻辑是:你执行的INSERT语句未指定插入列时,传入的值的数量和当前employee表的实际字段数量不一致。

你提供的建表语句和插入语句从字面上看字段数(共8个)和值数(共8个)是匹配的,所以优先排查以下两种常见场景:

  • 执行插入操作前,你曾执行过ALTER TABLE语句对employee表的字段做过增删操作,导致表的实际字段数和最初建表的8个字段不一致,插入时没有同步调整值的数量
  • 执行插入语句时手误漏写/多写了值,比如漏了某个逗号、多写了一个值项,导致语句解析后的值数量和字段数不匹配

额外注意事项

你当前插入语句中的日期值'1967-17-11'是非法格式:MySQL的DATE类型要求格式为YYYY-MM-DD,月份取值范围为1-12,该值中的17月不存在,就算列数匹配后也会触发日期格式错误,建议修正为合法日期,比如'1967-11-17'。

最佳实践

建议INSERT语句显式指定插入的列名,既可以避免表结构变更后语句失效的问题,也可以更清晰的识别值和列的对应关系,示例写法:

INSERT INTO employee (emp_id, first_name, last_name, birth_date, sex, salary, super_id, branch_id)
VALUES (100, 'David', 'Wallace', '1967-11-17', 'M', 250000, NULL, NULL);

内容的提问来源于stack exchange,提问作者Doguhan İlter

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:36:02