フォーラムのウェブサイトのデータベースを作成したい...
フォーラムWebサイトのすべてのユーザーは、次のフィールドを持つUSERSという名前のテーブルに格納されます。
user_name
user_ID
(and additional details)
次のフィールドを持つFORUMSという名前の単一のテーブルがあります。
forum_ID
forum_creatorID(which is the ID of one of the users)
forum_topic
replies
views
また、作成されたフォーラムごとに(FORUMSテーブルの行ごとに)、「forum_ID」_repliesという名前の個別のテーブルがあり、そのフォーラムの正確なforum_IDが引用符で置き換えられます...
したがって、フォーラムには、その特定のフォーラムへのすべての返信が保存される別のテーブルがあります...
「forum_ID」_repliesテーブルのフィールドは次のとおりです。
user_ID
user_name
comment
timestamp(for the comment)
私は自分のデザインを明確にしたことを願っています...今、私の疑問は
各「forum_ID」_repliesのフィールドの1つとしてuser_nameを保存しました。ただし、user_nameは、各 "forum_ID" _repliesテーブルに格納する代わりに、user_IDを使用してUSERSテーブルから参照(またはアクセス)できると思います。このようにして、冗長性が減少します。
ただし、user_nameが各テーブルに格納されている場合、user_nameの検索が減り、結果をより速く表示できます。
どちらがより最適ですか?
アクセスを高速化するために名前とIDを保存しますか、それとも重複を避けるためにIDのみを保存しますか?