Ràng buộc PRIMARY KEY trong SQL
- Trang trước Độc nhất trong SQL
- Trang tiếp theo Chìa khóa ngoại trong SQL
Ràng buộc PRIMARY KEY trong SQL
Ràng buộc PRIMARY KEY duy nhất xác định mỗi bản ghi trong cơ sở dữ liệu bảng.
Khóa chính phải chứa các giá trị duy nhất.
Cột khóa chính không thể chứa giá trị NULL.
Mỗi bảng nên có một khóa chính và mỗi bảng chỉ có thể có một khóa chính.
Ràng buộc PRIMARY KEY trong CREATE TABLE SQL
Dưới đây là SQL tạo PRIMARY KEY ràng buộc trên cột "Id_P" khi bảng "Persons" được tạo:
MySQL:
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), PRIMARY KEY (Id_P) )
SQL Server / Oracle / MS Access:
CREATE TABLE Persons ( Id_P int NOT NULL PRIMARY KEY, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )
Nếu cần đặt tên cho ràng buộc PRIMARY KEY và định nghĩa ràng buộc PRIMARY KEY cho nhiều cột, hãy sử dụng ngữ pháp SQL sau đây:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName) )
Ràng buộc PRIMARY KEY trong ALTER TABLE của SQL
Nếu cần tạo ràng buộc PRIMARY KEY cho cột "Id_P" khi bảng đã tồn tại, hãy sử dụng SQL sau đây:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD PRIMARY KEY (Id_P)
Nếu cần đặt tên cho ràng buộc PRIMARY KEY và định nghĩa ràng buộc PRIMARY KEY cho nhiều cột, hãy sử dụng ngữ pháp SQL sau đây:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
Ghi chú:Nếu bạn sử dụng câu lệnh ALTER TABLE để thêm khóa chính, bạn phải tuyên bố cột khóa chính không chứa giá trị NULL (khi bảng được tạo lần đầu tiên).
Hủy bỏ ràng buộc PRIMARY KEY
Nếu cần hủy bỏ ràng buộc PRIMARY KEY, hãy sử dụng SQL sau đây:
MySQL:
ALTER TABLE Persons DROP PRIMARY KEY
SQL Server / Oracle / MS Access:
ALTER TABLE Persons DROP CONSTRAINT pk_PersonID
- Trang trước Độc nhất trong SQL
- Trang tiếp theo Chìa khóa ngoại trong SQL