これから説明するように、私はデータベース設計に本当に慣れていません。
テーブルを追加する必要のあるMSSQLデータベースがあります。このテーブルには、別のテーブルに関連する情報が含まれています。ただし、主キーの候補はありません(すべてのフィールドが重複している可能性があります)。このテーブルが使用されるのは、特定の種類のクエリに必要となる可能性のあるレコードを保持することだけです。これらのレコードは、他のテーブルにも含まれているフィールドを使用して非常に簡単に取得できます(ただし、一意ではありません)。
具体的には、私のメインテーブルにはたくさんの化学記録があります。各化学レコードは、品質管理レコードと呼ばれる別のレコードセットに関連付けられています(2番目の表)。それらは「BatchID」と呼ばれるフィールドによって関連付けられます。非常に簡単なのは、「このBatchIDですべてのレコードを取得する」と言って、必要なものを正確に取得できることです。ただし、両方のテーブルに任意のBatchIDのインスタンスが複数存在する可能性があるため(実際には通常存在します)、それらをリンクするためにフープをジャンプする必要があります。より一般的な意味では、理論的には、テーブルを何にも取り付けずに浮かせても大丈夫ですか?
圧倒的に単純な解決策は、化学テーブルとは関係なく、品質管理をデータベースに配置することです。他の何か、おそらくそれ以上に関連付けるために、少なくとも1つの他のテーブルを挿入する必要があります。そのような私の生活を複雑にする唯一の理由は、データベース設計の重要な原則に違反したくないということです。
私の質問は、データベースに浮動テーブルを置いても大丈夫ですか?それともそれは正しいですか?
助けてくれてありがとう。