MySQL中創建表時,需要指定一個或多個列作為主鍵,該列將作為數據表中記錄的唯一標識符。下面是使用MySQL語句創建表并定義主鍵的示例:
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”關鍵字來指定。主鍵的值必須唯一,且不能為NULL。
如果需要在多個列上定義主鍵,可以使用以下語法:
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”兩列組成,這意味著無論“order_id”或“customer_id”是否唯一,只要兩者組合的值唯一,就可以成為一條記錄的唯一標識符。
需要注意的是,在實際應用中,如果數據表中沒有明顯的唯一標識符,則可以使用自增長的整數列作為主鍵,例如:
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”被定義為自動增長的整數列,且當每次插入一條新記錄時,都會自動計算出下一個可用的唯一值作為主鍵。