使用Time.now或Time.now.to_s或Time.now.to_datetime会抛出错误。
使用Date.today无效,因为它将日期与时间存储为12.00 AM而不是当前时间戳。
请帮我解决这个问题。
答案 0 :(得分:5)
我不确定为什么以及什么会引发错误,但如果您尝试从Ruby生成一个正确SQL的日期字符串(特别是Rails,请执行此处),您可以使用Time.now.to_s(:db)
。
答案 1 :(得分:2)
我使用CURRENT_TIMESTAMP来获取带有时间戳的当前日期。有效。
感谢您的帮助。
答案 2 :(得分:1)
您是否尝试过类型声明(在更新语句中使用 now()):
INSERT INTO table1 (field1, field2, field3, timestampfield) VALUES ('value1', 'value2', 'value3', now())
[编辑:]看一下“{(3)}的”now()“
答案 3 :(得分:1)
如需更新,请尝试以下内容:
UPDATE table1 SET mytime = now();
如果你想在插入时加上适当的时间,你可以选择另一个选项,只需将函数now()设置为datetime字段默认值。
答案 4 :(得分:1)
Time.now.to_formatted_s:db这应该给你db友好的时间戳。
http://api.rubyonrails.org/classes/ActiveSupport/CoreExtensions/Time/Conversions.html#M001093