Использование Time.now или Time.now.to_s или Time.now.to_datetime выдает ошибку.
Использование Date.today не помогает, поскольку в нем хранится дата со временем 12:00, а не текущая отметка времени.
Пожалуйста, помогите мне решить эту проблему.
Я не уверен, почему и что выдает ошибку, но если вы пытаетесь сгенерировать строку даты, которая является правильным SQL из Ruby (в частности, Rails здесь), вы можете использовать Time.now.to_s(:db).
Time.now.to_s(:db)
Я использовал CURRENT_TIMESTAMP, чтобы получить текущую дату с отметкой времени. Это сработало.
спасибо за вашу помощь.
Time.now.to_formatted_s: дБ, это должно дать вам дружественную отметку времени.
http://api.rubyonrails.org/classes/ActiveSupport/CoreExtensions/Time/Conversions.html#M001093
Для обновления попробуйте что-то вроде:
UPDATE table1 SET mytime = now();
Еще один вариант, если вы хотите установить правильное время для вставки, просто установите функцию now () для поля даты и времени по умолчанию.
Вы пробовали оператор такого типа (с now () в операторе обновления):
INSERT INTO table1 (field1, field2, field3, timestampfield) VALUES ('value1', 'value2', 'value3', now())
[EDIT:] Посмотрите здесь для объяснения из "сейчас ()"