- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:主キーやオートインクリメントの事教えて!!!)
主キーとオートインクリメントの使い方について
このQ&Aのポイント
- 作成するショッピングサイトにおける顧客登録機能について、メールアドレスを主キーとするか、オートインクリメントを主キーとするかについて悩んでいます。
- メールアドレスを主キーとする場合、重複チェックを行い重複登録はないようにしますが、変更時に主キーも変更されます。
- 一方、オートインクリメントを主キーとする場合、一意性は確保できますが、オートインクリメントは主キーに使用しないほうが良いとも言われます。皆さんの意見を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
個人的にはメールアドレスや電話番号を主キーにします。 ミスによる多重登録を防ぐためです。オートインクリメントですと、 主キーでの重複チェックは出来ません。 メールアドレスや電話番号ならチェック不要なのです。もし、既に 登録されていればINSERTでエラーになりますから、予め検索する 必要がありません。オートインクリメントだと、登録前にチェックが 必要なので、DBアクセスが1回余計にかかるし、マルチスレッド なので、「今見て無いから登録時も無い」とは言えません。 チェック⇒登録の間ロックするのも面倒だし・・・ また、同一人物が複数のメルアドを持っていて、それぞれで登録 しても構わないんじゃないでしょうか。お客に変わりないし、 「信用調査のため名寄せ」なんてことまで考えていなければ特に 問題ないと思います。
お礼
回答ありがとうございます。 やはりメールアドレスを主キーにするのがいいようですね。 セキュリティー的にもこっちのほうがいいみたいですね^^ さっそくこの方法でつくってみます。