首頁常見問題正文

數(shù)據(jù)庫和表的基本操作:主鍵約束分為哪兩種?

更新時間:2022-12-22 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  在MySQL中,為了快速查找表中的某條信息,可以通過設(shè)置主鍵來實現(xiàn)。主鍵約束是通過PRIMARY KEY定義的,它可以唯一標(biāo)識表中的記錄,這就好比身份證可以用來標(biāo)識人的身份一樣。在MySQL中,主鍵約束分為兩種,具體如下。

  1.單字段主鍵

  單字段主鍵指的是由一個字段構(gòu)成的主鍵,其基本的語法格式如下所示:

字段名 數(shù)據(jù)類型 PRIMARY KEY

  【例2-17】創(chuàng)建一個數(shù)據(jù)表example01,并設(shè)置id作為主鍵,SQL語句如下:

CREATE TABLE example01(id INT PRIMARY KEY,
                       name VARCHAR(20),
                       grade FLOAT);

  上述SQL語句執(zhí)行后,example01表中創(chuàng)建了id、name和grade三個字段,其中,id字段是主鍵。

  2.多字段主鍵

  多字段主鍵指的是多個字段組合而成的主鍵,其基本的語法格式如下所示:

PRIMARY KEY(字段名1,字段名2,...,字段名n)

  在上述格式中,“字段名1,字段名2,...,字段名n”指的是構(gòu)成主鍵的多個字段名稱。

  【例2-18】創(chuàng)建一個數(shù)據(jù)表example02,在表中將stu_id和course_id兩個字段共同作為主鍵,SQL語句如下:

CREATE TABLE example02(stu_id INT,
                       course_id INT,
                       grade FLOAT,
                       PRIMARY KEY(stu_id,course_id)
                       );

  上述SQL語句執(zhí)行后,example02表中包含stu_id、course_id和grade三個字段,其中,stu_id和course_id兩個字段組合可以唯一確定一條記錄。

  注意:每個數(shù)據(jù)表中最多只能有一個主鍵約束,定義為PRIMARY KEY的字段不能有重復(fù)值且不能為NULL值。

分享到:
在線咨詢 我要報名
和我們在線交談!