常見五種約束:
-
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
未經允許,請勿轉載 謝謝!