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

如何修复项目要求使用char类型时出现Data too long for column的报错

MySQL 1406报错解决方案

错误根因

你建表时所有CHAR类型字段未指定存储长度,MySQL默认CHAR字段长度为1个字符,只要存入的内容长度超过1就会触发Data too long报错,和字段类型本身无关,无需更换为longtext。

解决步骤

  • 首先删除已创建的错误表,执行SQL:
DROP TABLE IF EXISTS students;
  • 重新创建表结构,给每个CHAR字段根据实际业务需求设置足够的存储长度,参考修正后的建表语句:
CREATE TABLE students(
    stu_id CHAR(10),
    stu_first_name CHAR(20),
    stu_last_name CHAR(20),
    address CHAR(100),
    city CHAR(30),
    state CHAR(20),
    zip CHAR(10),
    major CHAR(50),
    email CHAR(50),
    phone VARCHAR(255)
);

注意事项

CHAR为定长字符串类型,存入内容短于设定长度时会自动补空格填充到对应长度,因此设置长度时建议结合实际业务的最大可能长度选择,避免不必要的存储空间浪费。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 05:27:03