mysql - 无法使用所需的字符串值保存/更新字段

标签 mysql ruby-on-rails ruby-on-rails-4

我有一个名为SystemState的模型。以下是创建此表的迁移:

create_table :system_states do |t|
  t.string :code
  t.timestamps
end

但是,即使 code 列是 string 类型,当我执行以下操作时:

> SystemState.first
> #<SystemState id: 1, code: 0, created_at: "2017-03-14 10:19:45", updated_at: "2017-03-14 10:28:33">

> SystemState.find(1).update_attributes(code: "system_alert_notification")

> SystemState.first
> #<SystemState id: 1, code: 0, created_at: "2017-03-14 10:19:45", updated_at: "2017-03-14 10:29:43">

可以看出,它总是将其更新为0(整数)。

列名是保留的还是什么?迫切想知道上述原因。

最佳答案

以下是一些可能性:

1) 可能codemysql中的保留字

2)另外,我确信您的数据库中的列是整数类型。将其更改为字符串,它应该可以工作。

关于mysql - 无法使用所需的字符串值保存/更新字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42783659/

相关文章:

ruby-on-rails - Rails has_many STI

mysql - 数据库架构中的文件夹

mysql - Shopware Mysql 在单个查询中计算体积重量

mysql - SQL - 根据多列将一个表中的记录匹配到另一个表

mysql - mysql中的多个order by数据显示不正确

ruby-on-rails - Postgres 无法连接到 Unix 域套接字 5432 上的服务器

javascript - 使用 javascript 提交两份表单,一份提交,一份不提交。不明白为什么?

ruby-on-rails - Rails4- Sunspot- 全文参数 [ :search] always returns no results

ruby-on-rails - 可以在 Rails/ActiveRecord 中指定带有 NULL 的唯一索引吗?

ruby-on-rails - 在 Rails 中提供异常类和消息作为参数以引发