mac + mysql
在创建表的时候遇到了Invalid default value for 'created_at'的错误,不知道什么原因造成的。
CREATE TABLE `test` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`created_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`updated_at` timestamp NOT NULL DEFAULT '1970-01-01 00:00:00',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
默认数据使用“0000-00-00 00:00:00”报错,使用“1970-01-01 00:00:00”也同样报错。
首先謝謝各位的幫助,費了很大的勁終於找到了解決方法:
先用下面的指令看下sql_mode
如果查詢的結果如下:
如果結果含有NO_ZERO_IN_DATE, NO_ZERO_DATE
則執行下面的指令:
雷雷
timestamp 是數字
1970-00-00 這是 date格式
類型不同
timestamp這個字元類型是有範圍的,如果要使用0000-00-00 00:00:00就只能使用字串了
可以參考我的這篇部落格:http://www.cnblogs.com/chenmh/p/4565986....