国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL 5.6 中 TIMESTAMP有那些變化

2024-07-24 12:45:38
字體:
供稿:網(wǎng)友

在MySQL 5.6.6之前,TIMESTAMP的默認行為:

TIMESTAMP列如果沒有明確聲明NULL屬性,默認為NOT NULL。(而其他數(shù)據(jù)類型,如果沒有顯示聲明為NOT NULL,則允許NULL值。)設置TIMESTAMP的列值為NULL,會自動存儲為當前timestamp。

表中的第一個TIMESTAMP列,如果沒有聲明NULL屬性、DEFAULT或者 ON UPDATE,會自動分配 DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP 屬性。

表中第二個TIMESTAMP列,如果沒有聲明為NULL或者DEFAULT子句,默認自動分配'0000-00-00 00:00:00′。插入行時沒有指明改列的值,該列默認分配'0000-00-00 00:00:00′,且沒有警告。

2列TIMESTAMP未聲明為NULL的默認行為

從MySQL5.6.6開始這種默認設置的方法被廢棄了。在MySQL啟動時會出現(xiàn)以下警告:

[Warning] TIMESTAMP with implicit DEFAULT value is deprecated.Please use --explicit_defaults_for_timestamp server option(seedocumentation for more details).

關(guān)閉警告,在my.cnf中加入

[mysqld]explicit_defaults_for_timestamp=true

重啟MySQL后錯誤消失,這時TIMESTAMP的行為如下:

TIMESTAMP如果沒有顯示聲明NOT NULL,是允許NULL值的,可以直接設置改列為NULL,而沒有默認填充行為。

TIMESTAMP不會默認分配DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP屬性。

MySQL5.6-INNODB-timestampTIMESTAMP 不設置是否為NULL

聲明為NOT NULL且沒有默認子句的TIMESTAMP列是沒有默認值的。往數(shù)據(jù)表中插入列,又沒有給TIMESTAMP列賦值時,如果是嚴格SQL模式,會拋出一個錯誤,如果嚴格SQL模式?jīng)]有啟用,該列會賦值為'0000-00-00 00:00:00′,同時出現(xiàn)一個警告。(這和MySQL處理其他時間類型數(shù)據(jù)一樣,如DATETIME)

TIMESTAMP 默認設置為NOT NULL

Note:

以上內(nèi)容和存儲引擎選擇無關(guān)。

MySQL從5.5升級到5.6,TIMESTAMP的變化

前言

前段時間,系統(tǒng)MySQL從5.5升級到了5.6,系統(tǒng)出現(xiàn)了大量的異常。大部分異常引起原因是由于TIMESTAMP的行為發(fā)生了變化。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 隆尧县| 花莲县| 陆丰市| 马山县| 玉龙| 承德市| 衡水市| 安吉县| 洛浦县| 安溪县| 饶平县| 滨州市| 平定县| 富源县| 油尖旺区| 红桥区| 仁怀市| 阳东县| 九龙城区| 宜州市| 静海县| 龙游县| 桓台县| 平和县| 沙坪坝区| 久治县| 蕲春县| 九龙县| 历史| 固安县| 晋宁县| 原阳县| 连江县| 祁门县| 房产| 买车| 德化县| 勃利县| 会泽县| 布尔津县| 崇礼县|