ここでデータベース設計の専門家からの提案が必要です。
1つのテーブル(欠陥)に約6つの外部キーがあり、それらはすべてユーザーテーブルの主キーを指しています。それは次のようなものです:
defect (.....,assigned_to,created_by,updated_by,closed_by...)
欠陥に関する情報を取得したい場合は、6つの結合を行うことができます。それを行うためのより良い方法はありますか?
もう1つは
states
、ユーザー定義の値のセットの1つを格納できるテーブルがあることです。欠陥テーブルとタスクテーブルがあり、これらのテーブルの両方で共通の状態テーブル(New、In Progressなど)を共有したいと思います。だから私は作成しました:task (.....,state_id,imp_id,.....)
defect(.....,state_id,imp_id,...)
state(state_id,state_name,...)
importance(imp_id,imp_name,...)
重要度(通常、緊急など)、優先度などの状態とともに、このような共通の属性が多数あります。それらすべてに対して、同じテーブルを使用したいと思います。タスクと欠陥を区別するために、各テーブルに1つのフラグを保持しています。そのような場合の最良の解決策は何ですか?
誰かが健康領域でこのアプリケーションを使用している場合、彼らは彼らの欠陥またはタスクに異なるタイプ、状態、重要性を割り当てたいと思っています。さらに、ユーザーがプロジェクトを選択すると、構成パラメーターセクションの下にすべてのタイプ、状態などが表示されます。