什么是MySQL主鍵和外鍵?
ary Key)是一種用于唯一標識數(shù)據(jù)庫表中每個記錄的列。主鍵列中的每個值都必須唯一,且不能為NULL。
Key)是一種用于連接兩個表的列。它通過指定連接兩個表的列的值來創(chuàng)建表之間的關(guān)系。外鍵列中的每個值必須是另一個表中的主鍵值,或者是NULL。
如何在MySQL中使用主鍵和外鍵?
1. 創(chuàng)建表格時指定主鍵
在創(chuàng)建表格時,可以使用PRIMARY KEY關(guān)鍵字來指定主鍵列。例如:
CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,ame VARCHAR(30) NOT NULL,ail VARCHAR(50) NOT NULL,
password VARCHAR(30) NOT NULL
在這個例子中,id列被指定為主鍵列。AUTO_INCREMENT關(guān)鍵字用于自動為id列分配唯一的值。
2. 添加外鍵
在創(chuàng)建表格時,可以使用FOREIGN KEY關(guān)鍵字來指定外鍵列。例如:
CREATE TABLE orders (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user_id INT(6) UNSIGNED,
product_id INT(6) UNSIGNED,tity INT(3),
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (product_id) REFERENCES products(id)
在這個例子中,user_id和product_id列被指定為外鍵列。REFERENCES關(guān)鍵字用于指定連接到另一個表的列。
3. 使用ALTER TABLE添加外鍵
如果已經(jīng)創(chuàng)建了表格,可以使用ALTER TABLE語句來添加外鍵。例如:
ALTER TABLE orders
ADD CONSTRAINT orders_user_id_fk
FOREIGN KEY (user_id) REFERENCES users(id);
在這個例子中,orders_user_id_fk是外鍵的名稱。ADD CONSTRAINT關(guān)鍵字用于添加約束。FOREIGN KEY和REFERENCES關(guān)鍵字用于指定列的連接。
4. 刪除外鍵
可以使用ALTER TABLE語句來刪除外鍵。例如:
ALTER TABLE orders
DROP FOREIGN KEY orders_user_id_fk;
在這個例子中,orders_user_id_fk是要刪除的外鍵的名稱。DROP FOREIGN KEY關(guān)鍵字用于刪除外鍵。
使用主鍵和外鍵是一種有效的方式來確保數(shù)據(jù)庫表的正確性和一致性。在MySQL中,可以使用PRIMARY KEY和FOREIGN KEY關(guān)鍵字來指定主鍵和外鍵列,也可以使用ALTER TABLE語句來添加和刪除外鍵。