Sql-foreign-key
提供:Dev Guides
SQL-外部キー
外部キーは、2つのテーブルをリンクするために使用されるキーです。 これは、参照キーとも呼ばれます。
外部キーは、値が別のテーブルの主キーと一致する列または列の組み合わせです。
- 2つのテーブル間の関係は、2つのテーブルの外部キーを持ついずれかのテーブルのプライマリキーと一致します。*
テーブルのいずれかのフィールドで定義された主キーがある場合、そのフィールドの同じ値を持つ2つのレコードを持つことはできません。
例
次の2つのテーブルの構造を検討してください。
顧客表
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)
);
- ORDERSテーブル*
CREATE TABLE ORDERS (
ID INT NOT NULL,
DATE DATETIME,
CUSTOMER_ID INT references CUSTOMERS(ID),
AMOUNT double,
PRIMARY KEY (ID)
);
ORDERSテーブルが既に作成されており、外部キーがまだ設定されていない場合、テーブルを変更して外部キーを指定する構文を使用します。
ALTER TABLE ORDERS
ADD FOREIGN KEY (Customer_ID) REFERENCES CUSTOMERS (ID);
外部キー制約のドロップ
FOREIGN KEY制約を削除するには、次のSQL構文を使用します。
ALTER TABLE ORDERS
DROP FOREIGN KEY;