关于mysql使用命令行时出现Data too long for column的解决方案:


方法一:

1,在mysql根目录下找到my.ini文件;

2:将其中sql-mode中的STRICT_TRANS_TABLES这个属性去掉;

3:重启mysql的服务(注意注销电脑不会重启mysql服务,重启不知道可不可以):

我的电脑——(右键)管理——服务与应用程序——服务——MYSQL——开启(停止、重启动)

该方法只是将错误隐藏掉,强行插入,很有可能导致插入的值不正确!

 

方法二:

在mysql启动参数中加入 --default-character-set=gbk这个参数

完整命令为 mysql -u root -p --default-character-set=gbk(注意后面参数是有两个中划线的)

但是该方法会使数据库的编码方式改编为gbk,可能会导致java后台获取或者插入的值变成乱码,要慎重使用。

 

具体原因很可能与windows控制台的默认字符集为gbk有关。另外strict 模式时mysql5.7以后才有的特性,所以之前的版本应该不会有这样的问题。

当然该问题最简单的方法还是打开桌面上的navicat.exe,一切烦恼都烟消云散啦!

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM