主キーを割り当てようとしていますが、一部のデータが重複していますか? データを保持しながら主キーを保持するにはどうすればよいでしょうか?
5 に答える
17 年間のデータベース作業でこれに遭遇したのは、データのエラーによるものだけでした。1 人の顧客が同じ ID で、主キーのないテーブルに 2 回入力されていました。
主キーを宣言する必要がある場合、最も論理的な列を主キーとして使用できるようにするために、最初にデータ エラーを解決する必要がありました。
したがって、テーブル内のすべてのデータがビジネス ルールに準拠しているかどうかを確認し、ビジネス ルールがこの列を主キーとして使用することを暗示しているかどうかを確認することをお勧めします。
主キーは一連の一意の値です。したがって、重複データを保持することも、主キーを保持することもできますが、両方を保持することはできません。
または、テーブルに ID 列を追加し、シーケンスから入力することで、代理キーを使用することもできます。もちろん、この状況では、ビジネス キーの一意性を強制していないため、「主キー」は無意味です。しかし、少なくとも、現実の誠実さを持っていると自分をだますことができます。
私が推測できることから、データがあり、列を主キーとして割り当てようとしていますが、データにはその列の値が重複しています。
主キーは一意である必要があります。それがデータベース 101 です。主キーとして機能するのが重複のみである場合は、テーブルを適切に構成していません。
主キーは一意であるため、特定の列に重複データが必要な場合、その同じ列をそのテーブルの主キーにすることはできません。