【问题标题】:rails length of complicated index [duplicate]复杂索引的导轨长度[重复]
【发布时间】:2016-02-05 21:10:56
【问题描述】:

我这样写迁移:

create_table :table1 do |t|
  t.string :foo, null: false, default: '', limit: 512
  t.integer :bar, null: false


  t.index [:foo, :bar]
end

得到一个错误

Mysql2::Error: 指定的键太长;最大密钥长度为 767 字节

除了减少列foo 限制外,我该如何解决这个问题?

【问题讨论】:

    标签: ruby-on-rails ruby rails-migrations


    【解决方案1】:

    String is varchar(255) 您的限制太大,因此您可以使用 t.text 或将限制更改为 255。

    您可以通过传递链接到索引上的字段的哈希来修复上一个错误。

    t.index [:foo, :bar], :length => {:foo => 25 }
    

    【讨论】:

      猜你喜欢
      • 2014-11-13
      • 2018-09-21
      • 2019-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-29
      • 1970-01-01
      • 2021-11-19
      相关资源
      最近更新 更多