
はじめまして。私は今ショッピングサイトを作ろうとしているものです。
データベース、Mysqlのプロフェッショナルに質問したいことがあります。
今作ろうとしているショッピングサイトでは顧客登録機能を付けようと思っています。顧客の主キーはメールアドレスにしようと思っているのですがいいんでしょうか?
もちろん登録するときにメールアドレスが重複していないかのチェックはかけるので重複することはないと思いますがどうなんでしょう?
またメールアドレスは顧客変更で変更される場合もあります。ですから主キーが変わるということになります。(変更時にもプログラムで重複チェックをかけるので重複はしないですが)
それか別にオートインクリメントなどを主キーにするほうがいいでしょうか?
例 オートインクリメント メールアドレス 名前 住所 etc・・・
これなら主キーは一意にできますが知り合いから聞いた話ではオートインクリメントはあまり主キーなどに使わないほうがいいと聞きました。
皆さんならどんな感じのテーブルを作成しますか?
No.1ベストアンサー
- 回答日時:
個人的にはメールアドレスや電話番号を主キーにします。
ミスによる多重登録を防ぐためです。オートインクリメントですと、
主キーでの重複チェックは出来ません。
メールアドレスや電話番号ならチェック不要なのです。もし、既に
登録されていればINSERTでエラーになりますから、予め検索する
必要がありません。オートインクリメントだと、登録前にチェックが
必要なので、DBアクセスが1回余計にかかるし、マルチスレッド
なので、「今見て無いから登録時も無い」とは言えません。
チェック⇒登録の間ロックするのも面倒だし・・・
また、同一人物が複数のメルアドを持っていて、それぞれで登録
しても構わないんじゃないでしょうか。お客に変わりないし、
「信用調査のため名寄せ」なんてことまで考えていなければ特に
問題ないと思います。
回答ありがとうございます。
やはりメールアドレスを主キーにするのがいいようですね。
セキュリティー的にもこっちのほうがいいみたいですね^^
さっそくこの方法でつくってみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 飲食業・宿泊業・レジャー ビジネスホテルのカードキーのトラブルです。 1 2023/07/11 07:30
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- その他(データベース) accessについて 2 2022/05/31 16:58
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- カラオケ カラオケのキー下げは負け組なのですか? 8 2023/02/20 05:58
- カラオケ 原曲キー設定で歌った事を原曲キーと言ってはいけないんでしょうかね? 5 2023/06/01 23:00
- Oracle sqlで質問です。 Aテーブルの登録番号をキーにBテーブルから確認番号を取得したいのですが、Bテーブ 4 2023/05/18 13:08
- 楽器・演奏 短調の曲は、なぜ短調のハモニカでは吹けず、長調のハモニカでは完璧に吹けるのかの理由が知りたいです 4 2023/04/20 10:56
- Google+ ブランド品偽物サイトからのメールを拒否する方法 批判覚悟で投稿します。 とあるサイトからブランド品を 2 2023/01/11 21:49
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLの抽出方法に悩んでいます(...
-
顧客・売上管理のツールをさが...
-
条件抽出について
-
データベースの1要素に複数デー...
-
Access フォームのデータがテー...
-
Access VBAでクエリーのレコー...
-
ワードでの単純作業の効率化に...
-
SQLのWHERE句について
-
テーブル1 2 3 の結合
-
ファイルメーカーのリレーショ...
-
(ACCESS)連番取得について
-
【続続】Access2002で連番のつ...
-
ADOでレコードを閉じるタイミン...
-
Access レコードロックについて...
-
毎回変わる列名からの集計
-
Accessで名寄せグループの関係...
-
SQLのクエリを教えてください
-
クエリの抽出方法について
-
SQL 顧客マスタから顧客番号...
-
ファイルメーカーの集計につい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access VBAでクエリーのレコー...
-
Access フォームのデータがテー...
-
データベースの1要素に複数デー...
-
Access IF文でテーブルに存在し...
-
ワードでの単純作業の効率化に...
-
Access 既に開いているフォー...
-
別のDBからテーブルをコピーす...
-
顧客IDを入力すると顧客名や住...
-
ACCESS で マクロの中でフィ...
-
ワードで保存するファイル名の...
-
Access 縦(行)のデータを横(列)...
-
シングルクォーテーションとダ...
-
ADOでレコードを閉じるタイミン...
-
Access レコードロックについて...
-
Accessデータベースで行と列を...
-
テーブル1 2 3 の結合
-
子フォームから別(孫)フォー...
-
Access2013VBA 複数のテーブル...
-
主キーやオートインクリメント...
-
Accessで名寄せグループの関係...
おすすめ情報