很苦恼的一件事,碰见算是不止一次这种问题了。之前怎么解决的也给忘了,现在又摔了一次,决定记录下来以备参考。
- 无法插入中文,errorcode1366.。。。。。。
- 网上很多说时字符集的问题,可是我查看之后发现我的字符集根本没有任何问题,清一色的utf8。
- 并且我的my.ini文件里呢,default-character-set=utf8; || default-character-set=gbk;的时候也并不能解决问题。当然前提是表的字符集也是相对应的。这个时候我发现依然不行。网上给出的全部的思路都是字符集不匹配,所以只能接着从那方面查原因。于是查看了一下字段的编码格式,如下图:
-
- 发现varchar类型的字段是latin1-latin1_general_ci(上图已经改过),也不知道当时为啥设置成了那种编码。总之改成Tabledefault之后,算是跟表的字符集类型相符了。然后发现就能正常插入中文了。
- 以上是我碰见的1366时改的地方。每个人的情况都不太一样,大家还是多多注意细节为好。
- 中文插入乱码。
- 我的情况是:mysql字符集utf8,然后新建的一张表,字符集也是utf8。相关中文字段类型char。然后我读取本地的txt文件进行数据insert。insert完成之后并没有报错,只是字段值是乱码。
- 最后用notepad++打开txt文件。在格式->转为UTF-8编码格式。重新load data成功。
如果给看的童鞋造成了误导还请见谅。