我目前正在编写将数据插入数据库的代码。一切都很好,除了日期没有像我期望的那样插入。
我想插入当前日期,所以我使用 GETDATE()
函数插入 departDate 列,但数据库显示的结果是 0000-00-00
而不是当前日期日期。
这是我插入数据的方式。
INSERT INTO `route_master` (`route_id`, `busNo`, `noOfSeat`, `origin`,
`destination`, `departDate`, `departTime`, `arrivalTime`, `price`) VALUES
('47', 'BUA1245', '40', 'KOTA KINABALU INTERNATIONAL AIRPORT', '1 BORNEO',
'GETDATE() ', '06:00', '06:55', '15.00')
我也尝试使用 CURRENT_TIMESTAMP
,但它仍然显示相同的结果。
谁能帮我解决这个问题?
最佳答案
你应该使用 NOW()而不是 GETDATE(),并且还删除了 GETDATE() 周围的 ',GETDATE() 是 MySql 中的一个函数。引号被解释为字符串。
INSERT INTO `route_master` (`route_id`, `busNo`, `noOfSeat`, `origin`,
`destination`, `departDate`, `departTime`, `arrivalTime`, `price`)
VALUES
('47', 'BUA1245', '40', 'KOTA KINABALU INTERNATIONAL AIRPORT', '1
BORNEO', NOW(), '06:00', '06:55', '15.00')
如果您不确定要使用哪个函数,请检查此查询以查看哪个函数为您提供所需的值。
SELECT NOW(),CURDATE(),CURTIME();
它的输出是这样的:
NOW() - CURDATE() - CURTIME()
2017-05-11 11:00:00 - 2017-05-11 - 11:00:00
关于mysql - INSERT GETDATE() 但它插入 0000-00-00 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43910744/