2

ユーザー データを整理するためのベスト プラクティスは何か知りたいです。

行ごとにすべてのユーザー データを 1 つのテーブルに格納する必要がありますか?それとも、それを小さなチャンクに分割して、主キーで関連付けられた複数のテーブルを使用する必要がありますか?

例えば。

まず、名前、職業、場所などの個人情報を記録したいと思います。最終的には、使用履歴を追加するオプションがあると便利です。彼らが記入した調査の数と、どの記事にコメントしたかなどです。

これを入力している間、コメント用のテーブル、ユーザー名とパスワード用のテーブル、個人情報用のテーブルを用意し、必要に応じてテーブルを追加し続けることは理にかなっています...

ただし、確認が必要です。

4

2 に答える 2

7

1 対多の関係になる場合は分割する必要がありますが、1 対 1 の場合は分割しないでください。したがって、ユーザーが複数の住所、電話番号、履歴、友人などを持つ場合、顧客の ID に関連付けられた住所テーブル (または電話番号、履歴、または友人のテーブル) が必要になります。

ユーザー名とパスワードについては、別のテーブルは必要ありません。

于 2012-06-04T18:03:10.613 に答える
1

ベストプラクティスは、データベースを最適化することです。または、最初にユーザーデータを整理したい場合は、このように異なるテーブルに結合することでユーザーデータ全体を簡単に追跡できるため、1 対多の関係を使用する必要があります。

SELECT * FROM user_A a INNER JOIN userdata_B b ON a.id=b.a_id

ユーザーに名前name2、職業1、職業2、場所1、場所2などの複数のレコードが含まれている場合、複数のテーブルを作成し、このレコードをこれらのテーブルに入力する必要があります。ユーザーデータ全体を単一のテーブルに入力すると、結果に非常に多くの実行時間がかかるためです

この後、インデックスを適用します.......

于 2012-06-04T19:22:08.697 に答える