回覆列表
  • 1 # 使用者6602652349876

    SQL FOREIGN KEY 約束

    一個表中的 FOREIGN KEY 指向另一個表中的 PRIMARY KEY。

    透過一個例子來解釋外來鍵。請看下面兩個表:

    "Persons" 表:

    Id_P LastName FirstName Address City

    1 Adams John Oxford Street London

    2 Bush George Fifth Avenue New York

    3 Carter Thomas Changan Street Beijing

    "Orders" 表:

    Id_O OrderNo Id_P

    1 77895 3

    2 44678 3

    3 22456 1

    4 24562 1

    請注意,"Orders" 中的 "Id_P" 列指向 "Persons" 表中的 "Id_P" 列。

    "Persons" 表中的 "Id_P" 列是 "Persons" 表中的 PRIMARY KEY。

    "Orders" 表中的 "Id_P" 列是 "Orders" 表中的 FOREIGN KEY。

    FOREIGN KEY 約束用於預防破壞表之間連線的動作。

    FOREIGN KEY 約束也能防止非法資料插入外來鍵列,因為它必須是它指向的那個表中的值之一。

    下面的 SQL 在 "Orders" 表建立時為 "Id_P" 列建立 FOREIGN KEY:

    CREATE TABLE Orders

    (

    O_Id int NOT NULL,

    OrderNo int NOT NULL,

    Id_P int,

    PRIMARY KEY (O_Id),

    FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)

    )

    如需撤銷 FOREIGN KEY 約束,請使用下面的 SQL:

    ALTER TABLE Orders

    DROP FOREIGN KEY fk_PerOrders

  • 中秋節和大豐收的關聯?
  • 陳小春主演的電影?