在MySQL數(shù)據(jù)庫中,我們可以使用CREATE TABLE語句創(chuàng)建新的數(shù)據(jù)表,并在其中定義主鍵和外鍵等約束。
其中,組合主鍵是指在一個數(shù)據(jù)表中,由多個字段一起構(gòu)成的唯一標(biāo)識。例如,我們可以在一個學(xué)生成績表中,將學(xué)生的學(xué)號和課程編號作為組合主鍵,來保證每個學(xué)生每門課程只有一條成績記錄。
CREATE TABLE Score ( Stu_id INT NOT NULL, Course_id INT NOT NULL, Score DECIMAL(5,2) NOT NULL, PRIMARY KEY (Stu_id, Course_id) );
在上面的示例中,我們使用了PRIMARY KEY約束來定義了Stu_id和Course_id這兩個字段組成的組合主鍵。
此外,我們還可以使用FOREIGN KEY約束來定義外鍵,用于維護(hù)數(shù)據(jù)表之間的關(guān)系。例如,我們可以在一個訂單表中定義一個外鍵關(guān)聯(lián)到客戶表,來確保訂單只能屬于已經(jīng)存在的客戶。
CREATE TABLE Order ( Order_id INT NOT NULL PRIMARY KEY, Customer_id INT NOT NULL, Order_date DATE NOT NULL, FOREIGN KEY (Customer_id) REFERENCES Customer(Customer_id) );
在上面的示例中,我們使用了FOREIGN KEY約束來定義了Customer_id這個字段作為外鍵,關(guān)聯(lián)到了另一個名為Customer的數(shù)據(jù)表的主鍵Customer_id。這樣我們就可以通過外鍵來維護(hù)訂單和客戶之間的關(guān)系了。