Klíčové slovo PRIMÁRNÍ KLÍČ SQL
❮ Reference klíčových slov SQL
PRIMÁRNÍ KLÍČ
Omezení PRIMARY KEY
jednoznačně identifikuje každý záznam v tabulce.
Tabulka může mít pouze jeden primární klíč, který se může skládat z jednoho jediného nebo z více polí.
PRIMÁRNÍ KLÍČ SQL na CREATE TABLE
Následující SQL vytvoří PRIMÁRNÍ KLÍČ ve sloupci "ID" při vytvoření tabulky "Osoby":
MySQL:
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:
CREATE TABLE Persons
(
ID int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int
);
Chcete-li povolit pojmenování omezení PRIMARY KEY a definovat omezení PRIMARY KEY na více sloupcích, použijte následující syntaxi SQL:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);
Poznámka: Ve výše uvedeném příkladu je pouze JEDEN PRIMÁRNÍ KLÍČ (PK_Person). HODNOTA primárního klíče je však tvořena DVOU SLOUPCE (ID + Příjmení).
PRIMÁRNÍ KLÍČ SQL na ALTER TABLE
Chcete-li vytvořit omezení PRIMARY KEY ve sloupci "ID", když je tabulka již vytvořena, použijte následující SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD PRIMARY KEY (ID);
Chcete-li povolit pojmenování omezení PRIMARY KEY a definovat omezení PRIMARY KEY na více sloupcích, použijte následující syntaxi SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);
Poznámka: Pokud k přidání primárního klíče použijete příkaz ALTER TABLE, sloupce primárního klíče již musí být deklarovány tak, že neobsahují hodnoty NULL (když byla tabulka poprvé vytvořena).
ZRUŠTE omezení PRIMÁRNÍHO KLÍČE
Chcete-li zrušit omezení PRIMARY KEY, použijte následující SQL:
MySQL:
ALTER TABLE Persons
DROP PRIMARY KEY;
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT PK_Person;
❮ Reference klíčových slov SQL