将wamp升级到3.1.3后台,一切都正常,只是在数据库中添加记录的时候总是提示 Invalid defaul value for'create_time'。导致添加数据不成功

1,发现问题


需要在数据库表中增加一条新的记录。但通过phpmyadmin提交的时候总是提示Invalid default value for 'create_time' 。在Joomla的数据表中,一般都会将datetime字段类型的默认值设置为0000-00-00 00:00:00.如:create_time DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'。当SQL_MODE设置为严格模式的时候,系统会不允许这样的0被存储,因此会报错。

2,解决问题


解决问题的方案有两种,一种是调整数据表的定义,因为扩展并不是我们自己写的,因此这种操作性不强,另一种就是设置SQL_MODE.

操作的方法就是找到my.ini。在文件的最后增加下面的一段

sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

 然后重启mysql服务器即可。

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前