我的情况: 1.由于外键较多,插入数据时,提前关闭外键(SET FOREIGN_KEY_CHECKS=0). 2.所使用的sql语句中,有外键绑定到其他表中,所以无法从php页面插入. 原因分析: SET FOREIGN_KEY_CHECKS=0,此指令只对单一数据库用户有效,即使用该语句的用户有效,可以在忽略外键的情况下插入数据. 经验总结: 对于一些特殊操作,修改用户权限,应该及时回复正常状态,也就是说 SET FOREIGN_KEY_CHECKS=0: sql语句 SET FOREIGN_
1.现象 在命令行中,执行sql语句如果包含中问题,提示“ Data too long for column '列名' at row 1” 或者在命令行中查询出的结果中,中文乱码 2.分析 a.查看命令行的默认编码方式:右击命令行标题栏--属性--当前代码页 b.查看mysql中客户端与结果集的编码方式 show variables like 'character%';,可以看到,客户端与结果集的编码方式都是utf8 问题找到了,命令行与mysql的编码方式不一样导致的乱码: 3.解决方法 先停