SQLserver數據庫——表中主鍵約束

常見五種約束:

  • 1.主鍵約束

  • 2.外鍵約束

  • 3.唯一約束

  • 4.檢查約束

  • 5.默認值約束

下面就讓我們分別探討這五類約束設置添加以及刪除等用法吧!

1、主鍵約束

創建表時設置約束的方式有兩種:一種是在列級設置,另一種是在表級設置

  • 列級約束一般直接設置在該列的定義後面即可,表級約束通常設置在所有列定義之後。

在創建表時設置主鍵約束

  • ①在列級設置主鍵約束:
CREATE TABLE table_name
(
	column_name datatype [[CONSTRAINT constraint_name]primark key]
	[,...n]
)

其中:
table_name:表名。
column_name:列名。
[CONSTRAINT constraint_name]:可以省略,constraint_name是自定義的約束名字。
PRIMARY KEY:設置主鍵約束的關鍵字。

例:在創建圖書信息表(books)時,以列級約束的方式創建主鍵約束代碼語句如下:

USE dbtest1
GO
CREATE TABLE books
(
	id int CONSTRAINT pk_books_id PRIMARY KEY,
	name nvarchar(20),
	price decimal(7,1)
);

  • ②在表級約束設置主鍵約束:
CREATE TABLE table_name
(
	column_name datatype
	[,...n],
	[[CONSTRAINT constraint_name]PRIMARY KEY(column_name1,coiumn_name2,...)]
)

例:在創建圖書信息表(books)時,以表級約束的方式創建主鍵約束代碼語句如下:

USE dbtest1
GO
CREATE TABLE books
(
	id int ,
	name nvarchar(20),
	price decimal(7,1)
	CONSTRAINT pk_books_id PRIMARK KEY(id)
);

在修改表時添加主鍵約束

如果數據表已將創建完成,則需要在修改表時爲表中的列添加主鍵約束。具體用法如下:

ALTER TABLE table_name
ADD [CONSTRAINT constraint_name] PRIMARY KEY(column_name1,column_name2,...);

例:假設在創建圖書信息表時,並沒有爲其添加主鍵約束。要求在修改表時爲其添加主鍵約束。
根據題目要求,具體語法如下:

ALTER TABLE books
ADD CONSTRAINT pk_books_id PRIMARY KEY(id);

刪除主鍵約束

  • 刪除主鍵約束主要使用的是ALTER TABLE 語句,具體用法如下:
ALTER TABLE table_name
DROP CONSTRAINT constraint_name;

例:刪除圖書信息表(books)中的主鍵約束。
根據題目要求,具體語法如下:

ALTER TABLE books
DROP CONSTRAINT pk_books_id;

其他約束和主鍵約束設置刪除等操作類似,只是關鍵字不同。

各關鍵字如下:
外鍵約束 REFERENCES
唯一約束 UNIQUE
檢查約束 CHECK
默認值約束 DEFAULT

                            未經允許,請勿轉載  謝謝!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章