首页 > 解决方案 > ERROR 1265 (01000): 列的数据被截断

问题描述

你好,我是一名学生,不熟悉 MySQL。我是 mysql 新手,我需要帮助!我有一个数据库,在将数据插入一个表时遇到了一些麻烦。表名是makina

 CREATE TABLE `makina` (
  `lloji` varchar(20) DEFAULT NULL,
  `vitprodhimi` int(9) DEFAULT NULL,
  `ngjyra` enum('bardhe','blu','kuqe','zeze') DEFAULT 'bardhe'
) ENGINE=InnoDB DEFAULT CHARSET=latin1

对于ngjyra我不接受该值的列red

标签: mysql

解决方案


该错误是由于ENUM数据类型,它只接受您的特定值。

阅读更多:https ://dev.mysql.com/doc/refman/8.0/en/enum.html

如果你想接受更多的值,你应该alter在你的表中:如何在 MySQL 中的 ENUM 类型列中添加更多成员?

ALTER TABLE
    `makina`
MODIFY COLUMN
    `ngjyra` enum(
        'existing_value1',
        'existing_value2',
        'existing_value3',
        'existing_value4',
        'new_value1',
        'new_value2'
    )
DEFAULT  `bardhe`;

推荐阅读