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

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

SQL Server主鍵約束(PRIMARY KEY)

瀏覽:26日期: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
主站蜘蛛池模板: 和龙市| 吉水县| 黎平县| 崇仁县| 于都县| 兰西县| 麻城市| 资源县| 济宁市| 含山县| 报价| 章丘市| 石河子市| 全州县| 丹巴县| 青河县| 夏邑县| 崇仁县| 馆陶县| 清原| 西城区| 晋中市| 额济纳旗| 新宾| 滕州市| 锦州市| 鞍山市| 南皮县| 龙川县| 临江市| 永顺县| 略阳县| 岳西县| 岐山县| 泾阳县| 临夏县| 四会市| 和硕县| 绥芬河市| 微博| 兴仁县|