【なちゅらるきー】
ナチュラルキー とは?
💡 名前で呼ぶか、番号で呼ぶか——データベースのアイデンティティ問題
📌 このページのポイント
ナチュラルキーって、自然派のキーってこと?
メールアドレスとかもそうなの?
そうだね。「tanaka@example.com」を見ればどのユーザーか分かるでしょ? でもメールアドレスは変更される可能性があるから、ナチュラルキーの弱点でもあるんだ。
変更されるとどうなるの?
じゃあナチュラルキーって使わない方がいいの?
一概にはそう言えないよ。国コード「JP」や通貨コード「USD」みたいに変更されない値なら、ナチュラルキーの方がJOINしなくても意味が分かって便利なんだ。
設計センスが問われるところなんだね!
まさに。実務では「この値は将来変わらないか?」を判断基準にして、ナチュラルキーとサロゲートキーを使い分けるのがベストプラクティスだよ。
まとめ:ざっくりこれだけ覚えればOK!
「ナチュラルキー」って出てきたら「データ自体の意味ある値を主キーに使うこと」と思えればだいたいOK!
📖 おまけ:英語の意味
「Natural Key」 = 自然キー
💬 データが「自然に(natural)」持っている属性をキーにするから「ナチュラルキー」だよ