如何在mysql查询中手动添加时间或日期?

时间:2013-06-03 04:11:45

标签: mysql

我只是想问,有没有办法在mysql数据库中手动输入特定的时间或日期?

我正在使用addtime()adddate()但结果为0000

这是我的表类型:

+----------------+------------+------+-----+---------+-------+
| Field          | Type       | Null | Key | Default | Extra |
+----------------+------------+------+-----+---------+-------+
| Number_of_days | varchar(3) | NO   | PRI | NULL    |       |
| Date_In        | date       | NO   |     | NULL    |       |
| Time_In        | time       | NO   |     | NULL    |       |
+----------------+------------+------+-----+---------+-------+

这是我的命令

INSERT INTO Date_And_Time_In (Number_of_days, Date_In, Time_In) VALUES ('02', 'DATE(2013-06-03)', 'TIME(12:10:00)' );

这是输出

mysql> select * from Date_And_Time_In;
+----------------+------------+----------+
| Number_of_days | Date_In    | Time_In  |
+----------------+------------+----------+
| 01             | 2013-06-03 | 11:32:24 |
| 02             | 0000-00-00 | 00:00:00 |
+----------------+------------+----------+

第一个来自curdate()curtime()。我只是想尝试一下,如果我想改变一个特定的时间或日期,我用什么mysql命令?

3 个答案:

答案 0 :(得分:0)

当您在MySQL函数周围添加引号时,它们不会被执行(因为您已将它们转换为字符串);任何无效的日期值都将导致0000。删除引号,它应该工作得很好。

INSERT INTO 
    Date_And_Time_In (Number_of_days, Date_In, Time_In)
    VALUES ('02', DATE(2013-06-03), TIME(12:10:00));

答案 1 :(得分:0)

您不需要在这些值周围放置DATE()和TIME()函数。 MySQL接受这些格式并将它们正确放入。见下文:

INSERT INTO Date_And_Time_In (Number_of_days, Date_In, Time_In) VALUES ('02', '2013-06-03', '12:10:00' );

答案 2 :(得分:0)

您不需要日期和时间功能。只是引用引号中的文字。http://www.ntchosting.com/mysql/insert-date.html链接有很多例子。