天天看點

Data truncation: Data too long for column 'XXXXX' at row 1

MySQL的預設編碼是Latin1,不支援中文,是以會出現亂碼

後來我把my.ini中的Latin1改為utf8

[mysql]

default-character-set=utf8

[mysqld]

default-character-set=utf8

結果出現Data truncation: Data too long for column 'XXXXX' at row 1

然後我就試着修改varchar的大小

alter table XXX modify XXXXX varchar(30);

這樣就可以放15個字了,已經搓搓有餘了

依然還是Data truncation: Data too long for column 'XXXXX' at row 1

然後網上尋找解決方案,至少我試過的都不行,還有些太複雜就懶得試了

我就想是不是資料庫在建立的時候已經是MySQL的預設編碼Latin1,那就幹脆更改編碼後重建立表吧

我先用的是gbk,可以正常的插入中文

我想utf8也可以吧,就把預設編碼改為utf8,也可以正常插入

輸入status可以看到資料的編碼,資料庫是gbk,其他的是utf8,如圖

Data truncation: Data too long for column 'XXXXX' at row 1

轉載于:https://www.cnblogs.com/liangyan19910818/archive/2013/01/12/2857424.html