LoginSignup
49
47

More than 5 years have passed since last update.

Railsのマイグレーションでbigintを使うには

Last updated at Posted at 2014-03-31

はじめに

みなさんRailsやってますか?

DBのマイグレーションを行うとき、integerとかstringとか指定すると思うんですが、あれ指定すると

 t.integer ## 10桁までの数値
 t.string  ## 255文字までの文字列

って限定されてしまいますよね。文字列ならtext型使えとかいろいろありますが、それにしても数値型をbigintにできないのは不便です。

bigint使いたい!

コンシューマー向けサービスだとユーザ数がとんでもなく増えていくので、ユーザIDだけでもすごい数になります。そんなユーザ数いないとしてもFacebookでログインとかさせていると、IDがRails指定のintegerではエラーになります。

そこでどうしてもbigintが必要になるんですが、指定方法わかりづらいですよね。

Railsのマイグレーションファイルで、limitオプションつければそれができるんです。

create_table 'example' do |t|
  t.integer :int8, :limit => 8   # bigint
end

これで指定したカラムがbigintになります。

limitオプション他にもたくさんあるので、調べていただければ。

それではよいRailsライフを!

49
47
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
49
47