Ograniczenie PRIMARY KEY w SQL

Ograniczenie PRIMARY KEY w SQL

Klucz główny约束唯一标识数据库中的每条记录。

Klucz główny musi zawierać unikalne wartości.

Kolumna klucza głównego nie może zawierać wartości NULL.

Każda tabela powinna mieć jeden klucz główny, a tabela może mieć tylko jeden klucz główny.

Klucz główny约束在CREATE TABLE

Poniższy SQL tworzy klucz główny w kolumnie "Id_P" podczas tworzenia tabeli "Persons":

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)
)

Jeśli chcesz nazwać ograniczenie PRIMARY KEY oraz zdefiniować ograniczenie PRIMARY KEY dla wielu kolumn, użyj poniższego składni SQL:

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)
)

Ograniczenie PRIMARY KEY w SQL na ALTER TABLE

Jeśli chcesz utworzyć ograniczenie PRIMARY KEY dla kolumny "Id_P" w istniejącej tabeli, użyj poniższego SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (Id_P)

Jeśli chcesz nazwać ograniczenie PRIMARY KEY oraz zdefiniować ograniczenie PRIMARY KEY dla wielu kolumn, użyj poniższego składni SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)

Uwaga:Jeśli używasz zdania ALTER TABLE, aby dodać klucz główny, musisz zadeklarować kolumnę klucza głównego jako nie zawierającą wartości NULL (podczas pierwszego tworzenia tabeli).

Unieważnienie ograniczenia PRIMARY KEY

Aby unieważnić ograniczenie PRIMARY KEY, użyj poniższego SQL:

MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID