主キーとは
主キーは、単一のレコードに固有のデータベース内のエントリです。 通常、このキーは、データベースの外部からの一意の識別コード、またはデータベース内からの生成された番号の2つの方法のいずれかで導出されます。 データベースに、社会保障番号や部品識別番号など、エントリに常に一意の情報が含まれる場合、それらは通常、主キーとして使用されます。 データにそのような識別子がない場合、データベースは内部システムに基づいて番号を作成し、各レコードに一意のコードを付けることがよくあります。
主キーには、存在、一意性、不変性の3つの主な制限があります。 キーは、レコードの作成時に存在している必要があります。後で追加することはできません。 各キーは、他のキーと完全に異なる必要があります。 これは、名前や生年月日などの一般的な識別子を使用できないことを意味します。これは、同じ日に2人が同じ日に生まれる可能性があるためです。 最後に、主キーは作成後に変更することはできません。
データベースには潜在的に無限のエントリが存在する可能性があるため、プライマリキーも無限である必要があります。 データベースがキーを使い果たすことがないように、ほとんどのレコードはキーに数値コードを使用します。 数値は常に大きくなり、コンピューターは古いエントリに場所を保持するゼロを追加するだけなので、システムがキーを使い果たすことはありません。 これらの番号は一意でない情報に基づいている場合がありますが、キーが実行可能であることを確認するために一意の識別子が追加されます。
データベースは、データを整理する方法として主キーを使用します。 キーが繰り返されることはないため、その情報により、データベースはすべてのレコードを他のすべてのレコードから分離できます。 レコード内の各情報はキーに接続されます。 そうすることで、システムに何が起こっても、データベースは緩やかな情報からレコードを再構築できます。
意味のある主キーを割り当てることは、値を自動生成することよりも良い方法と見なされることがよくあります。 これにより、キーとして機能し、データを提供する識別子がレコードに与えられます。 小さいデータベースでは、この区別が必要になることはめったにありませんが、大規模なシステムでは、生成されたキーによって使用される余分なスペースがデータベースの肥大化につながる可能性があります。 これにより、システムの速度が低下し、データベースに必要なストレージスペースが大幅に増えます。