mysql 設置默許的時光值。本站提示廣大學習愛好者:(mysql 設置默許的時光值)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql 設置默許的時光值正文
所以以
create_time datetime default now()
的情勢設置默許值是弗成能的。
取代的計劃是應用TIMESTAMP類型取代DATETIME類型。
CURRENT_TIMESTAMP :當我更新這筆記錄的時刻,這筆記錄的這個字段不會轉變。
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP :當我更新這筆記錄的時刻,這筆記錄的這個字段將會轉變。即時光變成了更新時刻的時光。(留意一個UPDATE設置一個列為它曾經有的值,這將不惹起TIMESTAMP列被更新,由於假如你設置一個列為它以後的值,MySQL為了效力而疏忽更改。)假如有多個TIMESTAMP列,只要第一個主動更新。
TIMESTAMP列類型主動地用以後的日期和時光標志INSERT或UPDATE的操作。
假如有多個TIMESTAMP列,只要第一個主動更新。
主動更新第一個TIMESTAMP列鄙人列任何前提下產生:
列值沒有明白地在一個INSERT或LOAD DATA INFILE語句中指定。
列值沒有明白地在一個UPDATE語句中指定且別的一些的列轉變值。(留意一個UPDATE設置一個列為它曾經有的值,這將不惹起TIMESTAMP列被更新,由於假如你設置一個列為它以後的值,MySQL為了效力而疏忽更改。)
你明白地設定TIMESTAMP列為NULL.
除第一個之外的TIMESTAMP列也能夠設置到以後的日期和時光,只需將列設為NULL,或NOW()。
別的在5.0以上版本中也能夠應用trigger來完成此功效。
create table test_time (
id int(11),
create_time datetime
);
delimiter |
create trigger default_datetime before insert on test_time
for each row
if new.create_time is null then
set new.create_time = now();
end if;|
delimiter ;