Sql primary key

Ràng buột Primary Key của SQL

Ràng buột PRIMARY KEY của SQL

Ràng buộc xác định duy nhất mỗi bản PRIMARY KEY được ghi trong một bảng.

PRIMARY KEY phải chứa giá trị DUY NHẤT và không được chứa giá trị NULL.

Một bảng chỉ có thể có MỘT PRIMARY KEY, và trong bảng, Primary key này có thể bao gồm một hoặc nhiều cột (trường).

PRIMARY KEY SQL với CREATE TABLE

Câu lệnh SQL sau tạo một PRIMARY KEY trên cột “ID” khi bảng “Persons” được tạo.

MySQL

Ví dụ

CREATE TABLE

Persons ( ID int

NOT NULL

, LastName varchar(

255

)

NOT NULL

, FirstName varchar(

255

), Age int,

PRIMARY KEY

(ID) );

SQL Server/ Oracle/ MS Access

Ví dụ

CREATE TABLE

Persons ( ID int

NOT NULL PRIMARY KEY

, LastName varchar(

255

)

NOT NULL

, FirstName varchar(

255

), Age int );

Để cho phép đặt tên cho một ràng buột PRIMARY KEY và để xác định một ràng buột PRIMARY KEY trên nhiều cột, chúng ta sử dụng cú pháp SQL sau.

MySQL/ SQL Server/ Oracle/ MS Access

Ví dụ

CREATE TABLE

Persons ( ID int

NOT NULL

, LastName varchar(

255

)

NOT NULL

, FirstName varchar(

255

), Age int,

CONSTRAINT

PK_Person

PRIMARY KEY

(ID,LastName) );

Lưu ý: Trong ví dụ trên chỉ có MỘT PRIMARY KEY(PK_Person). Tuy nhiên, GIÁ TRỊ của khóa chính được tạo thành từ HAI CỘT (ID + LastName).

PRIMARY KEY SQL với ALTER TABLE

Để tạo ràng buột PRIMARY KEY trên cột “ID” khi bảng đã được tạo, chúng ta sử dụng cú pháp SQL sau.

MySQL/ SQL Server/ Oracle/ MS Access

Ví dụ

ALTER TABLE

Persons

ADD PRIMARY KEY

(ID);

Để cho phép đặt tên cho một ràng buột PRIMARY KEY và để xác định một ràng buột PRIMARY KEY trên nhiều cột, chúng ta sử dụng cú pháp SQL sau.

MySQL/ SQL Server/ Oracle/ MS Access

Ví dụ

ALTER TABLE

Persons

ADD CONSTRAINT

PK_Person

PRIMARY KEY

(ID,LastName);

Lưu ý: Nếu bạn sử dụng ALTER TABLE để thêm khóa chính, (các) cột khóa chính phải được khai báo là không chứa giá trị NULL (khi bảng được tạo lần đầu tiên).

Xóa ràng buột PRIMARY KEY

Để loại bỏ một ràng buột PRIMARY KEY, chúng ta sử dụng cú pháp SQL sau.

MySQL

Ví dụ

ALTER TABLE

Persons

DROP PRIMARY KEY

;

SQL Server/ Oracle/ MS Access

Ví dụ

ALTER TABLE

Persons

DROP CONSTRAINT

PK_Person;