Rails TYPE種類と外部キー

どうもバンバンです。
今日は新しいカリキュラムを学習する中で、外部キーと外部キー制約について復習する機会があったので備忘録として残していこうと
思います。
 
Type
railsのカラムで使用する文字列の種類
 
Typeの種類
string...文字列が255字まで
text...文字列が256字以上
reference...t.reference :〇〇と記述すると、〇〇ではなく〇〇_idを作成してくれる 但し外部キー制約がつかない
 
外部キー
異なるテーブルのレコードと関係性を持つ場合に必要な
カラム。他のテーブルのレコードを識別するために使う
 
外部キー制約
外部キーの対応するレコードが必ず存在しなくてはいけないという制約。
ex) t.reference :user, foreign_key: true
の場合 userカラムがあるレコードが存在しなくてはならないということ。先にレコードを作成していないと書き込みができないなどの問題が発生する。
 
身近なものを図にするとわかりやすい印象です。