前提条件: リレーショナルデータベースモデル
キーは、テーブル間の関係を維持するためのリレーショナル データベースの最も重要な要素の 1 つであり、テーブルのデータを一意に識別するのにも役立ちます。主キーはデータベースのタプルを一意に識別するのに役立つキーです。一方、外部キーは、1 つのテーブルが主キーとして機能する 1 つのテーブルの主キーを通じてテーブル間の関係を識別するために使用されるキーです。別のテーブルへの外部キー。ここで、両方について詳しく説明しましょう。
htmlタグ
主キーとは何ですか?
主キーは、特定の列のデータが一意であることを保証するために使用されます。列に NULL 値を含めることはできません。これは、既存のテーブル列、または定義されたシーケンスに従ってデータベースによって特別に生成された列のいずれかです。
例: STUD_NO と STUD_PHONE は両方ともリレーション STUDENT の候補キーですが、STUD_NO を主キーとして選択できます (多くの候補キーのうち 1 つだけ)。
アンドロイドのイースターエッグとは何ですか
テーブル学生
| STUD_NO | STUD_NAME | STUD_PHONE | STUD_STATE | STUD_COUNT | STUD_AGE |
|---|---|---|---|---|---|
| 1 | ラム | 9865278251 | ハリヤナ州 | インド | 二十 |
| 2 | ラム | 9655470231 | パンジャーブ | インド | 19 |
| 3 | スジット | 7514290359 | ラジャスタン州 | インド | 18 |
| 4 | スレシュ | 8564103258 | パンジャーブ | インド | 21 |
テーブル STUDENT_COURSE
| STUD_NO | コース_いいえ | コース名 |
|---|---|---|
| 1 | C1 | DBMS |
| 2 | C2 | コンピューターネットワーク |
| 1 | C2 | コンピューターネットワーク |
外部キーとは何ですか?
外部キーは、2 つのテーブル内のデータ間のリンクを提供する、リレーショナル データベース テーブル内の列または列のグループです。これは、別のテーブルの列 (ほとんどの場合は主キー) を参照する列です。
例: STUDENT_COURSE の STUD_NO は、STUDENT リレーションの STUD_NO への外部キーです。
主キーと外部キーの違い
| 主キー | 外部キー |
|---|---|
| 主キーは、特定の列のデータが一意であることを保証するために使用されます。 | 外部キーは、2 つのテーブル内のデータ間のリンクを提供する、リレーショナル データベース テーブル内の列または列のグループです。 |
| これは、リレーショナル データベース テーブル内のレコードを一意に識別します。 | 別のテーブルの主キーであるテーブル内のフィールドを指します。 |
| テーブル内で許可される主キーは 1 つだけです。 | 一方、テーブルでは複数の外部キーが許可されます。 |
| これは、UNIQUE 制約と Not Null 制約の組み合わせです。 | リレーショナル データベース内の重複した値とテーブルを含めることができます。 |
| NULL 値は許可されません。 | NULL 値を含めることもできます。 |
| その値は親テーブルから削除できません。 | その値は子テーブルから削除できます。 |
| 制約は一時テーブルに暗黙的に定義できます。 | この制約は、ローカルまたはグローバル一時テーブルには定義できません。 |
結論
この記事では、主キーと外部キー、およびそれらの違いについて基本的に説明しました。主キーまたは外部キーのどちらのキーも、データベース管理システムにおいて重要な役割を果たします。主キーには一意の値が含まれますが、外部キーには主キーから参照する値が含まれます。主キーの主な特徴は、繰り返すことができず、一意であることです。主キーはテーブル内の行を決定し、外部キーはテーブル間の関係を決定するため、これらの関数にはいくつかの違いがあります。
文字列javaの部分文字列
よくある質問
1. リレーショナル データベース モデルには何種類のキーがありますか?
- 候補キー
- 主キー
- スーパーキー
- 代替キー
- 外部キー
- 複合キー
詳細については、以下を参照してください。 リレーショナル モデルのキーの種類。