mysql日期類型默認(rèn)值’0000-00-00’ 報錯
問題描述
如題,本來是 從另一個數(shù)據(jù)庫中導(dǎo)出的sql文件,在我電腦上導(dǎo)入報這個錯誤,不知道是不是mysql 版本問題。多方搜索無果,所以上來求助。
DROP TABLE IF EXISTS `workreport_member`;CREATE TABLE `workreport_member` ( `uid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT ’用戶ID’, `nickname` char(16) NOT NULL DEFAULT ’’ COMMENT ’昵稱’, `sex` tinyint(3) unsigned NOT NULL DEFAULT ’0’ COMMENT ’性別’, `birthday` date NOT NULL DEFAULT ’0000-00-00’ COMMENT ’生日’, `qq` char(10) NOT NULL DEFAULT ’’ COMMENT ’qq號’, `score` mediumint(8) NOT NULL DEFAULT ’0’ COMMENT ’用戶積分’, `login` int(10) unsigned NOT NULL DEFAULT ’0’ COMMENT ’登錄次數(shù)’, `reg_ip` bigint(20) NOT NULL DEFAULT ’0’ COMMENT ’注冊IP’, `reg_time` int(10) unsigned NOT NULL DEFAULT ’0’ COMMENT ’注冊時間’, `last_login_ip` bigint(20) NOT NULL DEFAULT ’0’ COMMENT ’最后登錄IP’, `last_login_time` int(10) unsigned NOT NULL DEFAULT ’0’ COMMENT ’最后登錄時間’, `status` tinyint(4) NOT NULL DEFAULT ’0’ COMMENT ’會員狀態(tài)’, PRIMARY KEY (`uid`), KEY `status` (`status`)) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT=’會員表’;
下面這是在Sequel Pro 導(dǎo)入時報的錯誤
不知道我說清楚了沒……
剛才又嘗試了一下,我把值改成
`birthday` date NOT NULL DEFAULT ’0001-01-01’ COMMENT ’生日’, 貌似就可以了,有點(diǎn)迷惑,之前的sql 是從windows的navcat導(dǎo)出來的, 導(dǎo)入是在MAC 的Sequel Pro 導(dǎo)入的。
問題解答
回答1:MySQL 5.7 以上版本默認(rèn)禁止 0000-00-00 的日期。在 MySQL 的配置文件 [mysqld] 區(qū)域添加
sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_pISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
然后重啟 MySQL
回答2:hyrijk用戶已經(jīng)提出解決方案,http://www.07net01.com/2016/04/1479450.html對sql_mode有此許補(bǔ)充說明
相關(guān)文章:
1. 雙擊安裝程序,安裝不了2. python - Pycharm的Debug用不了3. python - 如何用pandas處理分鐘數(shù)據(jù)變成小時線?4. javascript - 求救!網(wǎng)頁播放視頻只有聲音沒有畫面,網(wǎng)頁上傳視頻文件時怎么知道視頻的編碼為H264還是MPEG4??5. css - 請問B站頂部的模糊半透明導(dǎo)航條是怎么實(shí)現(xiàn)的呢?6. form表單中的label標(biāo)簽7. pdo - mysql 簡單注入疑問8. windows-7 - Win7中Vmware Workstatoin與Xampp中Apache服務(wù)器端口沖突?9. Python中使用超長的List導(dǎo)致內(nèi)存占用過大10. javascript - dropload+tab頁面,圖文頁滾動有兩個滾動區(qū)域怎么破?
