質問: 現在RailsTutorialなどを終了し、自分でアプリケーションを作成しようとしています。 DB設計の段階でユーザーの出身地を管理したいのですが、この場合都道府県はどのように管理するのが一般的なのでしょうか? 最初は都道府県名(string)で管理しようとしていましたが、都道府県は47個しかないこともあり、enumを使用しintegerで管理するほうが良いのかと思ってきました。 調べてみると、都道府県コードで管理することもあるようなのですが、どの手法がよく使われているのでしょうか?
回答: 要件次第です。 「出身地」の値をどのように利用することを想定しているかということです。 単なる「メモ」のような扱いにするのであれば、「テキスト」で保存しても構いませんし、 「東京都の出身者を検索する」とか「大阪府の出身者をカウントする」というような使い方をするのであれば、intで検索できる方がパフォーマンスは上がります。