• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:主キーやオートインクリメントの事教えて!!!)

主キーとオートインクリメントの使い方について

このQ&Aのポイント
  • 作成するショッピングサイトにおける顧客登録機能について、メールアドレスを主キーとするか、オートインクリメントを主キーとするかについて悩んでいます。
  • メールアドレスを主キーとする場合、重複チェックを行い重複登録はないようにしますが、変更時に主キーも変更されます。
  • 一方、オートインクリメントを主キーとする場合、一意性は確保できますが、オートインクリメントは主キーに使用しないほうが良いとも言われます。皆さんの意見を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

個人的にはメールアドレスや電話番号を主キーにします。 ミスによる多重登録を防ぐためです。オートインクリメントですと、 主キーでの重複チェックは出来ません。 メールアドレスや電話番号ならチェック不要なのです。もし、既に 登録されていればINSERTでエラーになりますから、予め検索する 必要がありません。オートインクリメントだと、登録前にチェックが 必要なので、DBアクセスが1回余計にかかるし、マルチスレッド なので、「今見て無いから登録時も無い」とは言えません。 チェック⇒登録の間ロックするのも面倒だし・・・ また、同一人物が複数のメルアドを持っていて、それぞれで登録 しても構わないんじゃないでしょうか。お客に変わりないし、 「信用調査のため名寄せ」なんてことまで考えていなければ特に 問題ないと思います。

bankensan
質問者

お礼

回答ありがとうございます。 やはりメールアドレスを主キーにするのがいいようですね。 セキュリティー的にもこっちのほうがいいみたいですね^^ さっそくこの方法でつくってみます。

関連するQ&A