Ruby on rails 用于mysql迁移的mediumtext类型

Ruby on rails 用于mysql迁移的mediumtext类型,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 4,我知道媒体文本的最大大小是16777215字节(16MB) 我使用以下rails迁移 def change change_column :solutions, :result, :text, :limit => 16.megabytes - 1 end 但我不需要为这个结果列分配16mb。我只需要2mb 那么,下面的工作会起作用吗 def change change_column :solutions, :result, :text, :limit => 2.megab

我知道媒体文本的最大大小是16777215字节(16MB)

我使用以下rails迁移

def change
    change_column :solutions, :result, :text, :limit => 16.megabytes - 1
end
但我不需要为这个结果列分配16mb。我只需要2mb

那么,下面的工作会起作用吗

def change
  change_column :solutions, :result, :text, :limit => 2.megabytes
end

还是仍将分配16mb?

创建一个新的迁移以将限制更改为2mb应该可以。应用迁移后,检查
db/schema.rb
,以确认
解决方案
表定义确实定义了2mb限制。为什么不尝试一下?如何检查其实际分配的是16MB还是2mb。我的意思是,问题实际上是,当你为文本指定一个限制时,它是将其作为限制还是下一个上限。例如,当我指定limit=>2mb时,mysql将把它作为16mb,因为下一个上限是16mb