外碼是 MySQL 中的資料完整性約束,透過引用主表主鍵列來確保子表資料與主表一致。外碼工作原理如下:確保子表引用的主表資料存在。級聯刪除:主表記錄刪除時,級聯刪除子表相關記錄。級聯更新:主表主鍵更新時,級聯更新子表相關記錄。
什麼是 MySQL 中的外碼?
外碼(Foreign Key)是 MySQL 中的一種資料完整性約束,用於確保不同表之間的行具有有效且一致的關係。它透過引用另一個表(主表)中的主鍵列來實現。
外碼如何運作?
當在子表中建立外碼時,它會引用主表中的主鍵列。當子表中插入一筆記錄時,外碼列的值必須符合主表中現有的主鍵值。
建立外碼
使用下列語法建立外碼:
<code class="sql">ALTER TABLE 子表 ADD FOREIGN KEY (外码列) REFERENCES 主表(主键列);</code>
範例
假設我們有兩個表:訂單
和訂單明細
#。 訂單明細
表有一個外碼 order_id
,它引用 訂單
表中的主鍵 id
。
<code class="sql">CREATE TABLE 订单 ( id INT PRIMARY KEY, 客户名称 VARCHAR(255) ); CREATE TABLE 订单明细 ( id INT PRIMARY KEY, order_id INT, 产品名称 VARCHAR(255), 数量 INT, FOREIGN KEY (order_id) REFERENCES 订单(id) );</code>
當插入給訂單明細
表格時,order_id
必須對應於訂單
表格中的現有id
值。這確保了訂單明細始終與有效的訂單關聯。
以上是mysql中外碼是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!