【问题标题】:Insert values into timestamp field mysql using rails使用rails将值插入时间戳字段mysql
【发布时间】:2015-09-23 11:53:16
【问题描述】:

我将表格迁移到有 2 个额外的列,其中 :timestamp 字段如下

class AddingStartAndEndTimeForQuestions < ActiveRecord::Migration
  def change
    add_column :questions, :eventMode, :boolean, default: false
    add_column :questions, :eventModeStartTime, :timestamp
    add_column :questions, :eventModeEndTime, :timestamp
  end
end

我无法从 Rails 控制台手动在此字段中插入时间戳。

我试过了

q.eventModeStartTime = Time.now
q.eventModeStartTime = Time.zone.now
q.eventModeStartTime = DateTime.now
q.eventModeStartTime = Time.now.to_s(:db)

Mysql 错误:

Mysql2::Error: Incorrect datetime value: '2015-09-23 22:46:28.109.109000' for column 'eventModeStartTime'

如何手动插入?我在这里做错了吗?

【问题讨论】:

  • Here 写道 MySQL 不支持时间戳列中的毫秒数
  • 有什么建议吗?我应该怎么办? @GeneralFailure
  • 删除毫秒(当然随着数据类型的变化)或更改 dbms 或询问 MySQL 支持

标签: mysql ruby-on-rails timestamp


【解决方案1】:
INSERT INTO `db_name`.`table` 
  (`id`, `field`, `created_at`, `updated_at`) 
VALUES 
  ('1', 'field_value', '2020-07-05 16:42:17', '2020-07-05 16:42:18');

【讨论】:

    猜你喜欢
    • 2015-08-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-11
    • 1970-01-01
    • 2013-08-08
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多