MySQL 1364 错误提示:#1364 - Field "details" doesn't have a default value

C++操作操作mysql,输出mysql错误码和错误描述:

MYSQL mysql;

sprintf("errno:%d, error: %s", mysql_errno(&mysql),mysql_error(&mysql));

检查my.cnf里面是否有“STRICT_TRANS_TABLES,如果有,就是它惹的祸了。

解决办法有两种: 
第一种:数据库设计时,为可能没有数据的字段设置默认值。
第二种:设置SQL的模式,此有两种方法: 
(1),配置my.ini,去掉:STRICT_TRANS_TABLES 重新启动mysql服务。
(2),运行SQL命令。注:此命令需要权限! SQL代码:

SET @@GLOBAL.sql_mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";

参考:http://hi.baidu.com/eason_fun/item/e96a0436f0c63dc42e8ec2da

猜你喜欢

转载自null-386.iteye.com/blog/2065720
今日推荐