相关疑难解决方法(0)

MYSQL不正确的DATETIME格式

我有一个带有Doctrine 1的应用程序,我通过生成update_datetime对象的字段new Zend_Date->getIso().它工作得很好多年,但现在我得到了一个新的笔记本和Doctrine尝试插入DATETIME字段作为字符串"2013-07-12T03:00:00+07:00"而不是正常的MySQL日期时间格式"2013-07-12 00:00:00",这是完全奇怪的.

同样的代码在另一台计算机上运行得很好.一切都几乎相同 - 两者都是MySQL 5.6.12,PHP 5.3.15.知道我应该在哪里看?

Fatal error: Uncaught exception 'Doctrine_Connection_Mysql_Exception' with message 'SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '2013-07-12T03:00:00+07:00' for column 'nextrun' at row 1' in library/Doctrine/Connection.php:1083

UPDATE

好的,在StackOverflow社区的帮助下,我终于解决了它.问题STRICT_TRANS_TABLES在于sql_mode变量.但是改变它/etc/my.cnf似乎还不够,所以我必须运行mysql -uroot并键入以下内容:

set sql_mode=NO_ENGINE_SUBSTITUTION; set global sql_mode=NO_ENGINE_SUBSTITUTION;

因此删除 STRICT_TRANS_TABLES

UPDATE2 如何永远摆脱STRICT?如何在MySQL中摆脱STRICT SQL模式

php mysql doctrine zend-framework doctrine-1.2

22
推荐指数
1
解决办法
2万
查看次数

如何修复`未知变量'sql-mode = ANSI'`?

使用MySQL 5.5.27,在my.cnf中我有:

[mysql]
sql_mode=ANSI
Run Code Online (Sandbox Code Playgroud)

启动mysql控制台后,我得到:

unknown variable 'sql-mode=TRADITIONAL'
Run Code Online (Sandbox Code Playgroud)

MySQL doc Server SQL Modes显示该选项,为什么它不起作用?

(如果有帮助,我在OSX Lion上)

另外,这里有一个pastebin显示其他人尝试过的东西,没有解决方案.

mysql

7
推荐指数
2
解决办法
8991
查看次数

标签 统计

mysql ×2

doctrine ×1

doctrine-1.2 ×1

php ×1

zend-framework ×1