在日期时间数据类型中插入 NOW() 值返回 0000-00-00 00:00:00

Sme*_*mee 0 mysql datetime

我有一个数据库,它有一个完美运行的 NOW() 函数,显示正确的日期。在不小心删除它之后,我创建了一个类似的数据库,但是当我插入 NOW() 以插入当前当前日期时,它会插入为 0000-00-00 00:00:00。

显示的警告是数据在 'blog_date' 被截断。现在我不知道如何解决这个使用 NOW() 获取当前时间的问题。下面是我的 blog_details 表、插入命令和错误:

CREATE TABLE `blog_details` ( `blog_id` int(11) NOT NULL AUTO_INCREMENT, 
`title` char(200)  NOT NULL,  `blog_content` varchar(2500)  NOTNULL, 
`blog_date` datetime  NOT NULL,  `cat_name` varchar(30)  NULL, 
PRIMARY KEY (`blog_id`)) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

INSERT INTO `blog_details` (`title`, `blog_content`, `blog_date`, `cat_name`)
VALUES('Breaking Bad TV Series', 'Best series evar', 'NOW()', 'Uncategorized');
Run Code Online (Sandbox Code Playgroud)

+---------+------+-------------------------------- ----------------+
| 级别 | 代码 | 留言 |
+---------+------+-------------------------------- ----------------+
| 警告 | 第1265章 第 1 行“blog_date”列的数据被截断 |
+---------+------+-------------------------------- ----------------+

tad*_*man 5

您插入的是"NOW()"与函数 call 完全不同的字符串NOW()

由于"NOW()"不是有效日期,因此它为零。

从中删除引号应该可以解决问题。