最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql建表報(bào)錯(cuò):invalid?default?value?for?'date'的解決方法

 更新時(shí)間:2022年12月15日 11:29:58   作者:我愛(ài)Java,Java萬(wàn)歲  
最近遇到一個(gè)這樣的問(wèn)題,出現(xiàn)了invalid default value for 'end_date'錯(cuò)誤,所以下面這篇文章主要給大家介紹了關(guān)于mysql建表報(bào)錯(cuò):invalid?default?value?for?'date'的解決方法,需要的朋友可以參考下

問(wèn)題描述

在執(zhí)行sql建表腳本時(shí),出現(xiàn)了“invalid default value for ‘end_date’ ”錯(cuò)誤,導(dǎo)致腳本執(zhí)行失敗。

執(zhí)行的sql語(yǔ)句

CREATE TABLE `tb_task_site` (
  `id` varchar(40) NOT NULL COMMENT 'id',
  `start_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '同步開(kāi)始時(shí)間',
  `end_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '同步結(jié)束時(shí)間',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

錯(cuò)誤提示

原因解析

mysql5.7對(duì)sql_mode的設(shè)置比mysql5.6更嚴(yán)格了,mysql5.6默認(rèn)的sql_mode:

NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

mysql5.7默認(rèn)sql_mode:

ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

其中 NO_ZERO_IN_DATE,NO_ZERO_DATE 兩個(gè)參數(shù)使得時(shí)間或日期參數(shù) 不得 使用0作默認(rèn)值,也就是上面的sql中 “default ‘0000-00-00 00:00:00’ ”是不被允許的,所以導(dǎo)致該錯(cuò)誤提示。

可以通過(guò) select @@sql_mode; 查看自己的mysql設(shè)置的sql_mode的值。

sql_mode 使得 sql 語(yǔ)句更嚴(yán)謹(jǐn),但是又會(huì)帶來(lái)老版本的不兼容問(wèn)題,所以可以設(shè)置sql_mode的值使得新版本兼容老版本的sql腳本。

解決方案

既然是那兩個(gè)sql_mode參數(shù)導(dǎo)致的問(wèn)題,那就將兩個(gè)參數(shù)去掉就好了。在默認(rèn)的sql_mode參數(shù)去除,只剩下:

ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

上面參數(shù)只是例子,具體設(shè)置參數(shù)值按照項(xiàng)目要求。

解決方法有如下幾種:

1、暫時(shí)解決方案,可以在該會(huì)話(session)中暫時(shí)修改其sql_mode參數(shù),但是會(huì)話結(jié)束,下一次會(huì)話,修改的參數(shù)就失效,變?yōu)樵瓉?lái)的參數(shù)。

set SQL_MODE = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

執(zhí)行完之后就可以繼續(xù)執(zhí)行建表語(yǔ)句,但是重啟mysql后再執(zhí)行建表語(yǔ)句的話依舊會(huì)報(bào)錯(cuò)。

2、永久解決方案,可以通過(guò)執(zhí)行sql方式,設(shè)置全局sql_mode參數(shù),設(shè)置后效果永久生效。

set GLOBAL sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

3、永久解決方案,直接修改配置文件,windows系統(tǒng)的話是my.ini文件,linux的話是my.cnf文件。有sql_mode的設(shè)置就修改,沒(méi)有就添加sql_mode:

然后重啟mysql,例如linux下執(zhí)行mysql重啟命令:

systemctl restart mysqld

總結(jié) 

到此這篇關(guān)于mysql建表報(bào)錯(cuò):invalid default value for 'date'解決的文章就介紹到這了,更多相關(guān)mysql invalid default value for 'date'內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 開(kāi)啟MySQL遠(yuǎn)程訪問(wèn)權(quán)限、允許遠(yuǎn)程連接方式

    開(kāi)啟MySQL遠(yuǎn)程訪問(wèn)權(quán)限、允許遠(yuǎn)程連接方式

    本文介紹了如何開(kāi)啟MySQL遠(yuǎn)程訪問(wèn)權(quán)限,包括修改用戶host和添加最高權(quán)限用戶的方法,同時(shí),還涵蓋了關(guān)閉防火墻以解決遠(yuǎn)程連接問(wèn)題的步驟
    2024-11-11
  • mysql VARCHAR的最大長(zhǎng)度到底是多少

    mysql VARCHAR的最大長(zhǎng)度到底是多少

    今天群里有人問(wèn)varchar 不是最大應(yīng)該只可以設(shè)置65532(第一個(gè)字節(jié)+兩個(gè)長(zhǎng)度字節(jié))嗎 ,但是為什么可以設(shè)置成65533
    2012-10-10
  • phpstudy無(wú)法啟動(dòng)MySQL服務(wù)的完美解決辦法

    phpstudy無(wú)法啟動(dòng)MySQL服務(wù)的完美解決辦法

    學(xué)習(xí)php當(dāng)然是要先安裝好運(yùn)行環(huán)境了,phpstyudy是一個(gè)運(yùn)行php的集成環(huán)境,一鍵安裝對(duì)新手很友好,下面這篇文章主要給大家介紹了關(guān)于phpstudy無(wú)法啟動(dòng)MySQL服務(wù)的完美解決辦法,需要的朋友可以參考下
    2022-06-06
  • 詳解JDBC數(shù)據(jù)庫(kù)鏈接及相關(guān)方法的封裝

    詳解JDBC數(shù)據(jù)庫(kù)鏈接及相關(guān)方法的封裝

    這篇文章主要介紹了詳解JDBC數(shù)據(jù)庫(kù)鏈接及相關(guān)方法的封裝的相關(guān)資料,下面是封裝的具體類,用到了泛型和反射,希望能幫助到大家,需要的朋友可以參考下
    2017-08-08
  • MySQL用戶與權(quán)限的管理詳解

    MySQL用戶與權(quán)限的管理詳解

    這篇文章主要介紹了MySQL用戶與權(quán)限的管理,詳細(xì)分析了mysql用戶密碼、權(quán)限設(shè)置與使用相關(guān)操作原理及注意事項(xiàng),需要的朋友可以參考下
    2019-07-07
  • MySQL數(shù)據(jù)庫(kù)wait_timeout參數(shù)詳細(xì)介紹

    MySQL數(shù)據(jù)庫(kù)wait_timeout參數(shù)詳細(xì)介紹

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)wait_timeout參數(shù)詳細(xì)介紹的相關(guān)資料,wait_timeout是MySQL中用于控制非交互式連接等待時(shí)間的系統(tǒng)變量,影響服務(wù)器資源管理和安全性,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • MySql 5.7.20安裝及data和my.ini文件的配置

    MySql 5.7.20安裝及data和my.ini文件的配置

    本文通過(guò)圖文并茂的形式給大家介紹了MySql 5.7.20安裝及data和my.ini文件的配置方法,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2017-11-11
  • mysql按天/小時(shí)/半小時(shí)/N分鐘/分鐘進(jìn)行數(shù)據(jù)分組統(tǒng)計(jì)功能

    mysql按天/小時(shí)/半小時(shí)/N分鐘/分鐘進(jìn)行數(shù)據(jù)分組統(tǒng)計(jì)功能

    我們?cè)谧鲰?xiàng)目或者數(shù)據(jù)分析時(shí),經(jīng)常遇到這樣的需求:統(tǒng)計(jì)不同時(shí)間粒度下的數(shù)據(jù)分布情況,例如,每一天中每個(gè)小時(shí)網(wǎng)站的訪問(wèn)量,某路口每半個(gè)小時(shí)通過(guò)的車輛數(shù)量等,下面給大家分享mysql按天/小時(shí)/半小時(shí)/N分鐘/分鐘進(jìn)行數(shù)據(jù)分組統(tǒng)計(jì)功能,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • 詳解Mysql之mysqlbackup備份與恢復(fù)實(shí)踐

    詳解Mysql之mysqlbackup備份與恢復(fù)實(shí)踐

    這篇文章主要介紹了詳解Mysql之mysqlbackup備份與恢復(fù)實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • mac下重置mysl8.0.11密碼的方法

    mac下重置mysl8.0.11密碼的方法

    mac下安裝mysql8.0.11時(shí)要求輸入密碼之后想修改密碼。接下來(lái)通過(guò)本文給大家介紹mac下重置mysl8.0.11密碼的方法,需要的朋友可以參考下
    2018-06-06

最新評(píng)論

崇明县| 巴林右旗| 涿州市| 清新县| 景洪市| 玉龙| 白河县| 浪卡子县| 台山市| 宿迁市| 永年县| 衡山县| 石台县| 威信县| 宜城市| 乌审旗| 鹤壁市| 视频| 五原县| 沂源县| 岫岩| 定陶县| 江华| 邵武市| 河南省| 习水县| 碌曲县| 普陀区| 宁都县| 项城市| 寻乌县| 清水河县| 杭州市| 海门市| 乌拉特中旗| 微山县| 错那县| 永顺县| 元阳县| 桐城市| 龙口市|