次のテーブルがあります: - 投稿 - ファイル - イベント - ドキュメント
すべての投稿、ファイル、イベント、ドキュメントにコメントを付けることができます。
これに適したデータベース スキームは何ですか?またその理由は何ですか?
最初の解決策
- コメント テーブル (comment_id、author_id、comment)
- リレーションを作成するための 4 つのテーブル (posts_comments(post_id, comment_id)、files_comments(file_id、comment_id)、events_comments(event_id、comment_id)、documents_comments(document_id、comment_id))
2 番目の解決策
- コメント テーブル (comment_id、author_id、comment)
- items_comments (comment_id、parent_type (enum['post'、'file'、'event'、'document'])、parent_id)
これに対するより良い解決策は何ですか、または2つのうちどちらを使用する必要がありますか?