dav*_*per 7 php mysql macos datetime
我在Os X 10.9.2中使用mysql,当我尝试在本地运行我的php网站时出现此错误:
日期时间格式无效:1292日期时间值不正确:列名称为"@OcTheColumn"
当我尝试在datetime字段中插入空值时发生错误.该网站在生产和其他一些本地计算机上工作正常,所以问题在于数据库,我必须在我的本地数据库中解决.阅读有关我读过的问题,mysql可以在Strict模式下运行,所以我编辑/usr/local/mysql/my.cnf并注释掉这一行:
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Run Code Online (Sandbox Code Playgroud)
我重新启动计算机仍然无法工作,但根据在线文档和其他问题,这是方法,但我想知道为了使我的应用程序正常工作,我必须做些什么改变.重复一遍,代码在生产中运行,windows与xampp等等...所以不能改变因为很长而且只是为了在本地工作我需要在MYSQL DATABASE中进行正确的更改.
提前致谢!
看起来MySQL的osx实例上的默认sql_mode设置为拒绝无效日期.
您可以尝试发出以下命令:
SET SESSION sql_mode='ALLOW_INVALID_DATES'
Run Code Online (Sandbox Code Playgroud)
在初始化会话时.
您可以更改列以允许 null
ALTER TABLE table_name MODIFY datetime_column_name datetime;
Run Code Online (Sandbox Code Playgroud)
只要列未声明为 NOT NULL,默认情况下列可为空。