国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

SQL Server主鍵約束(PRIMARY KEY)

瀏覽:3日期:2023-03-06 14:25:39
目錄
  • SQL Server PRIMARY KEY(主鍵)約束簡介
  • SQL Server PRIMARY KEY約束示例

SQL Server PRIMARY KEY(主鍵)約束簡介

主鍵是唯一標識表中每一行的一列或一組列。您可以使用主鍵約束為表創建主鍵。
如果主鍵僅包含一列,你可以使用PRIMARY KEY約束作為列約束:

CREATE TABLE table_name (
    pk_column data_type PRIMARY KEY,
    ...
);

如果主鍵有兩列或多列,則必須將主鍵約束用作表約束:

CREATE TABLE table_name (
    pk_column_1 data_type,
    pk_column_2 data type,
    ...
    PRIMARY KEY (pk_column_1, pk_column_2)
);

每個表只能包含一個主鍵,一個主鍵可以包含多個列,即多個列的組合不能重復。參與主鍵的所有列必須定義為NOT NULL。如果未為所有主鍵列指定NOT NULL約束,SQL Server會自動為這些列設置非空約束。

SQL Server PRIMARY KEY約束示例

以下示例創建了一個具有主鍵的表,主鍵由一列組成:

CREATE TABLE dbo.activities (
    activity_id INT PRIMARY KEY IDENTITY,--主鍵
    activity_name VARCHAR (255) NOT NULL,
    activity_date DATE NOT NULL
);

在表dbo.activities中,activity_id列是主鍵列,意味著這一列的值不能重復

IDENTITY屬性用于activity_id列自動生成唯一的整數值。

下面創建一個由兩列組成外鍵的新表:

CREATE TABLE dbo.participants(
    activity_id int,
    customer_id int,
    PRIMARY KEY(activity_id, customer_id)
);

在本例中,activity_idcustomer_id列中的值可以重復,但兩列中的每個值組合都必須是唯一的。

通常,表總是在創建時定義主鍵。然而,有時,現有表可能沒有定義主鍵。在這種情況下,可以使用ALTER TABLE語句向表中添加主鍵。比如示例:

先創建一個沒有主鍵列的表:

CREATE TABLE dbo.events(
    event_id INT NOT NULL,
    event_name VARCHAR(255),
    start_date DATE NOT NULL,
    duration DEC(5,2)
);

然后使event_id列成為主鍵:

ALTER TABLE sales.events 
ADD PRIMARY KEY(event_id);

注意,如果 sales.events 表已經有數據,在將 event_id 列提升為主鍵之前,必須確保 event_id 中的值是不重復的。

到此這篇關于SQL Server主鍵約束(PRIMARY KEY)的文章就介紹到這了,更多相關SQL Server主鍵約束內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: MsSQL
主站蜘蛛池模板: 维西| 华宁县| 西林县| 茌平县| 河东区| 丰都县| 阳城县| 海口市| 井陉县| 嘉祥县| 镇江市| 巩义市| 万盛区| 钦州市| 北票市| 军事| 临城县| 庄浪县| 乌审旗| 穆棱市| 望江县| 偏关县| 克山县| 临邑县| 靖江市| 曲松县| 旌德县| 许昌县| 翼城县| 景洪市| 尤溪县| 安宁市| 精河县| 宁波市| 连州市| 泽库县| 开封市| 七台河市| 买车| 玛曲县| 呼图壁县|