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

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

SQL Server主鍵約束(PRIMARY KEY)

瀏覽:233日期: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
主站蜘蛛池模板: 福清市| 微山县| 都江堰市| 江达县| 凌海市| 香格里拉县| 庐江县| 平顶山市| 阳城县| 定陶县| 宜昌市| 开平市| 江源县| 三河市| 芜湖县| 大邑县| 渝北区| 深圳市| 鹰潭市| 嘉义市| 邯郸县| 容城县| 南城县| 金湖县| 滨州市| 社旗县| 南丹县| 松江区| 雷波县| 澄江县| 仙桃市| 新巴尔虎右旗| 巫山县| 阜宁县| 东乡县| 五河县| 建德市| 财经| 敦化市| 缙云县| 通城县|