數據庫的每張表只能有一個主鍵


轉自:http://blog.csdn.net/for12/article/details/49300843

今天在共工作,做老項目維護的時候無意中發現一張表居然有三個主鍵。嚇死寶寶了,然后嘗試着建表建主鍵,但是都不能成功。疑問

難道是我寫的有問題,最后通過查資料總終於解決了。

1、數據庫的每張表只能有一個主鍵,不可能有多個主鍵。

2、所謂的一張表多個主鍵,我們稱之為聯合主鍵。

     注:聯合主鍵:就是用多個字段一起作為一張表的主鍵。

3、主鍵的主鍵的作用是保證數據的唯一性和完整性,同時通過主鍵檢索表能夠增加檢索速度。

 

下面聊聊怎么創建聯合主鍵:

 

1、GUI中同時選中多列,點擊設置為主鍵。

2、sql語句將多列設置為主鍵:

 

 一種是在建表時就寫出,語句如下:

Create Table 表名 (字段名1 Int Not Null,
                   字段名2 nvarchar(13) Not Null Primary Key (字段名1, 字段名2),
                    字段名3…………
                    字段名N………… )

另一種是在建表后更改,語句如下:

ALTER TABLE 表名 WITH NOCHECK ADD 
CONSTRAINT [PK_表名] PRIMARY KEY  NONCLUSTERED 
(
  [字段名1],
  [字段名2]
)
 
         
通過以上兩種方式就解決了聯合主鍵的問題。
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM