MySQL 數據庫表關係構建
高效的 MySQL 數據庫設計依賴於表間關係的合理構建。外鍵約束是其中一種常見的關係類型,它允許您連接不同表中的數據。
以下示例演示瞭如何建立外鍵關係:
<code class="language-sql">CREATE TABLE accounts( account_id INT NOT NULL AUTO_INCREMENT, customer_id INT(4) NOT NULL, account_type ENUM('savings', 'credit') NOT NULL, balance FLOAT(9) NOT NULL, PRIMARY KEY (account_id) );</code>
<code class="language-sql">CREATE TABLE customers( customer_id INT NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, address VARCHAR(20) NOT NULL, city VARCHAR(20) NOT NULL, state VARCHAR(20) NOT NULL, PRIMARY KEY (customer_id) );</code>
在 accounts
表中使用 FOREIGN KEY
子句來連接這兩個表:
<code class="language-sql">CREATE TABLE accounts( ... FOREIGN KEY (customer_id) REFERENCES customers(customer_id) ) ENGINE=INNODB;</code>
此約束確保 accounts
表中的每個 customer_id
都與 customers
表中已存在的 customer_id
匹配。通過引用 customer_id
列,建立了一對多關係:每個客戶可以擁有多個賬戶,而每個賬戶只屬於一個客戶。
MySQL 還支持其他類型的表關係。例如,您可以使用主鍵和外鍵約束來建立多對多關係。有關關係類型和約束的更多信息,請參考 MySQL 官方文檔。
以上是如何在MySQL中的表之間建立和管理關係?的詳細內容。更多資訊請關注PHP中文網其他相關文章!