Rails 3数据类型?

Ell*_*iot 158 ruby ruby-on-rails ruby-on-rails-3 rails-activerecord

在哪里可以找到可在rails 3中使用的数据类型列表?(例如文本,字符串,整数,浮点数,日期等?)我会随机了解新的,但我希望有一个我可以轻松参考的列表.

Nic*_*oul 269

以下是所有Rails3(ActiveRecord迁移)数据类型:

:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:primary_key
:references
:string
:text
:time
:timestamp

资源

  • 和:多态关联的引用.请参阅:http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html (4认同)

got*_*tqn 67

重要的是不仅要知道类型,还要知道这些类型到数据库类型的映射:

在此输入图像描述

在此输入图像描述

例如,请注意我们在MS SQL Server中使用:

  1. 旧的"datetime"而不是"datetime2"
  2. 十进制及其默认精度
  3. text和varchar而不是nvarchar
  4. int(不可能使用tiny int/small int/big int)
  5. 而不是BLOB的图像

  • 正如[本博客](http://ariejan.net/2009/08/20/once-and-for-all-rails-migrations-integer-limit-option/)所述.tinyint/smallint/bigint可以使用:limit选项设置:integer.我已经在Rails 3和MySQL上测试了它们,它们仍在工作,就像在博客中说的那样,它们是有符号整数. (2认同)

Tim*_*son 26

您的意思是定义活动记录迁移吗?或者你的意思是Ruby数据类型?

这是一个可能有助于创建迁移的链接:

正交思想 - MySQL和Ruby on Rails数据类型


lfl*_*res 15

通常了解这些数据类型的用途可能会有所帮助:

  • binary - 用于存储图像,音频或电影等数据.
  • boolean - 用于存储true或false值.
  • 日期 - 仅存储日期
  • datetime - 将日期和时间存储到列中.
  • 十进制 - 用于小数.
  • float - 用于小数.(十进制和浮点数有什么区别?)
  • 整数 - 用于整数.
  • primary_key - 唯一可以唯一标识表中每一行的键
  • string - 用于小数据类型,例如标题.(你应该选择字符串还是文字?)
  • text - 用于较长的文本数据,例如一段信息.
  • 时间 - 仅限时间
  • timestamp - 用于将日期和时间存储到列中.

我希望能帮助别人!此外,这是官方列表:http://guides.rubyonrails.org/migrations.html#supported-types