默認(rèn)情況下MySQL是可以接受在日期中插入0值,對于現(xiàn)實來說日期中的0值又沒有什么意義。調(diào)整MySQL的sql_mode變量就能達(dá)到目的。
set @@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION';
set @@session.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION';
例子:
有一個用于記錄日志的表
create table app_logs(
id int not null auto_increment primary key,
log_tm timestamp not null,
log_info varchar(64) not null)
engine=innodb,charset=utf8;
向日志表插入有意思的日期值
insert into app_logs(log_tm,log_info) values(now(),'log_info_1');
insert into app_logs(log_tm,log_info) values('2016-12-01','log_info_2');
向日志表插入包涵0的日期值
insert into app_logs(log_tm,log_info) values('2016-12-00','log_info_2');
ERROR 1292 (22007): Incorrect datetime value: '2016-12-00' for column 'log_tm' at row 1
以上這篇淺談MySQL數(shù)據(jù)庫中日期中包含零值的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Mysql根據(jù)時間查詢?nèi)掌诘膬?yōu)化技巧
- mysql 獲取昨天日期、今天日期、明天日期以及前一個小時和后一個小時的時間
- 解析MySQL中存儲時間日期類型的選擇問題
- JDBC中使用Java8的日期LocalDate和LocalDateTime操作mysql、postgresql
- MySQL 獲得當(dāng)前日期時間 函數(shù)
- MySQL查詢兩個日期之間記錄的方法
- 詳解MySQL日期 字符串 時間戳互轉(zhuǎn)
- 詳解mysql 獲取當(dāng)前日期及格式化
- mysql中格式化日期詳解
- mysql如何查詢兩個日期之間最大的連續(xù)登錄天數(shù)
- mysql日期date型和int型互換的方法
- mysql記錄根據(jù)日期字段倒序輸出
- mysql常用日期時間/數(shù)值函數(shù)詳解(必看)
- MySql判斷漢字、日期、數(shù)字的具體函數(shù)
- MySQL中日期和時間戳互相轉(zhuǎn)換的函數(shù)和方法
- Mysql獲取當(dāng)前日期的前幾天日期的方法
- mysql 獲取當(dāng)前日期函數(shù)及時間格式化參數(shù)詳解
- MySQL日期函數(shù)與日期轉(zhuǎn)換格式化函數(shù)大全