MySQL中創(chuàng)建表時(shí),需要指定一個(gè)或多個(gè)列作為主鍵,該列將作為數(shù)據(jù)表中記錄的唯一標(biāo)識(shí)符。下面是使用MySQL語(yǔ)句創(chuàng)建表并定義主鍵的示例:
CREATE TABLE students ( id INT NOT NULL, name VARCHAR(50) NOT NULL, age INT NOT NULL, PRIMARY KEY (id) );
在上述例子中,表名為“students”,包含3列:“id”、“name”和“age”。其中,“id”列被定義為主鍵,使用“PRIMARY KEY”關(guān)鍵字來(lái)指定。主鍵的值必須唯一,且不能為NULL。
如果需要在多個(gè)列上定義主鍵,可以使用以下語(yǔ)法:
CREATE TABLE orders ( order_id INT NOT NULL, customer_id INT NOT NULL, order_date DATE, PRIMARY KEY (order_id, customer_id) );
在上述例子中,“orders”表的主鍵由“order_id”和“customer_id”兩列組成,這意味著無(wú)論“order_id”或“customer_id”是否唯一,只要兩者組合的值唯一,就可以成為一條記錄的唯一標(biāo)識(shí)符。
需要注意的是,在實(shí)際應(yīng)用中,如果數(shù)據(jù)表中沒(méi)有明顯的唯一標(biāo)識(shí)符,則可以使用自增長(zhǎng)的整數(shù)列作為主鍵,例如:
CREATE TABLE products ( product_id INT AUTO_INCREMENT, product_name VARCHAR(50) NOT NULL, price DECIMAL(10, 2) NOT NULL, PRIMARY KEY (product_id) );
在上述例子中,“product_id”被定義為自動(dòng)增長(zhǎng)的整數(shù)列,且當(dāng)每次插入一條新記錄時(shí),都會(huì)自動(dòng)計(jì)算出下一個(gè)可用的唯一值作為主鍵。