mysql命令行下输入:
set sql_mode="";
然后执行刚刚的命令。
需要注意这个只在本次窗口生效,如果经常做这样的操作应该修改配置文件。
windows下为my.ini
linux下为my.cnf
上面的方法主要是关闭 sql_mode下的
STRICT_TRANS_TABLES:
在该模式下,如果一个值不能插入到一个事务表中,则中断当前的操作,对非事务表不做任何限制
虽然执行上显示的大多数都是成功,但是会发现
Records: 320 Duplicates: 0 Warnings: 15
我们再使用show warnings
看警告内容
会发现
Data truncated for column at row xxx
这个错误,其实就是插入的数据不合法造成的,
比如:乱码,超出字段长度,非法字符等, 我这里的插入的数据因为是中文所以超出字段长度。扩容之后问题完美解决。
根据报错的row+数字,我们其实可以很快发现问题。如果不是1,那么很大可能就是某一条数据太长的原因导致的。
如果是1,那可能是因为编码之类 的问题。