×
リレーショナルデータベースの基礎
身近な例として国民の「マイナンバー」や会社の「社員番号」が主キーに該当します。誰とも重複せず一人ひとりを確実に識別できます。一方、社員テーブルにある「所属部署コード」は「部署テーブル」の主キーである部署コードを参照する外部キーであり、存在しない部署コードが社員に誤って割り当てられるのをデータベースレベルで防止します。
CREATE TABLE departments (
    dept_id   NUMBER(4) PRIMARY KEY,
    dept_name VARCHAR2(30) NOT NULL
);

CREATE TABLE employees (
    emp_id  NUMBER(6) PRIMARY KEY,
    emp_name VARCHAR2(50),
    dept_id  NUMBER(4) REFERENCES departments(dept_id)
);

もう少し詳しく