MySQL 错误:“Data too long for column” 是什么意思?
当您插入的数据长度超过列所能存储的长度时,就会出现“Data too long for column”错误。
例如 - 如果您使用的是 varchar(6) 数据类型,这意味着它只能存储 6 个字符。因此,如果您输入超过 6 个字符,就会出现错误。
让我们创建一个表来理解这个错误。创建表的查询如下所示:
mysql> create table DataToolongDemo −> ( −> Name varchar(10) −> ); Query OK, 0 rows affected (0.55 sec)
上面,我们成功创建了一个表。我们设置了一个名为“Name”的字段,其类型为“varchar(10)。现在,如果我们输入超过 10 个字符,就会出现错误。
错误如下所示:
mysql> insert into DataToolongDemo values('Carol Taylor'); ERROR 1406 (22001): Data too long for column 'Name' at row 1
要解决上述错误,您可以将类型设置为 longtext。以下查询将类型从“varchar”更改为 longtext:
mysql> alter table DataToolongDemo change Name Name longtext; Query OK, 0 rows affected (2.22 sec) Records: 0 Duplicates: 0 Warnings: 0
现在,如果您插入相同的记录,就不会出现错误了:
mysql> insert into DataToolongDemo values('Carol Taylor'); Query OK, 1 row affected (0.11 sec)
使用 select 语句显示表中的所有记录。查询如下所示:
mysql> select *from DataToolongDemo;
以下是输出:
+--------------+ | Name | +--------------+ | Carol Taylor | +--------------+ 1 row in set (0.00 sec)
广告