我有一个具有完美工作NOW()功能的数据库,显示正确的日期。 并且在意外删除它之后,我创建了一个类似的数据库,但是当我插入NOW()时插入 当前的当前日期,它将插入到00:00:00。
显示的警告是数据在'blog_date'被截断。现在我不知道如何解决使用NOW()获取当前时间的问题。下面是我的blog_details表,insert命令和错误:
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');
+ --------- + ------ + ----------------------------- ------------------- +
|等级|代码|留言|
+ --------- + ------ + -------------------------------- ---------------- +
|警告| 1265 |第1行的“blog_date”列截断数据|
+ --------- + ------ + -------------------------------- ---------------- +
答案 0 :(得分:4)
您要插入的是字符串"NOW()"
,它与函数调用NOW()
完全不同。
由于"NOW()"
不是有效日期,因此为零。
从中删除引号可以解决问题。
答案 1 :(得分:0)
你不应该引用NOW()函数,所以试试没有' '看看是否有帮助。
INSERT INTO blog_details(title, blog_content, blog_date, cat_name)
VALUES('Breaking Bad TV Series', 'Best series evar', NOW(), 'Uncategorized');
答案 2 :(得分:0)
NOW()
函数附近有引号。将其更改为:
INSERT INTO `blog_details` (`title`, `blog_content`, `blog_date`, `cat_name`)
VALUES('Breaking Bad TV Series', 'Best series evar', NOW(), 'Uncategorized');