SQL PRIMARY KEY constraint
- Föregående sida SQL Unik
- Nästa sida SQL Foreign Key
SQL PRIMARY KEY constraint
PRIMARY KEY-begränsningen unikt identifierar varje enskilt post i databastabellen.
Huvudnyckeln måste innehålla unika värden.
Huvudnyckelspalten får inte innehålla NULL-värden.
Varje tabell bör ha en huvudnyckel och varje tabell kan bara ha en huvudnyckel.
PRIMARY KEY-begränsning vid CREATE TABLE
Följande SQL skapar PRIMARY KEY-begränsningen i kolonnen "Id_P" när tabellen "Persons" skapas:
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) )
Om du behöver namnge PRIMARY KEY-begränsningen och definiera PRIMARY KEY-begränsningar för flera kolonner, använd följande SQL-syntax:
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) )
SQL PRIMARY KEY-begränsning på ALTER TABLE
Om du skapar en PRIMARY KEY-begränsning för "Id_P"-kolumnen när tabellen redan finns, använd följande SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD PRIMARY KEY (Id_P)
Om du behöver namnge PRIMARY KEY-begränsningen och definiera PRIMARY KEY-begränsningar för flera kolonner, använd följande SQL-syntax:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
Kommentar:Om du använder ALTER TABLE-satsen för att lägga till en huvudnyckel, måste du deklarera huvudnyckelspalten som inte innehåller NULL-värden (vid skapandet av tabellen för första gången).
Häva PRIMARY KEY-begränsningen
Om du vill häva PRIMARY KEY-begränsningen, använd följande SQL:
MySQL:
ALTER TABLE Persons DROP PRIMARY KEY
SQL Server / Oracle / MS Access:
ALTER TABLE Persons DROP CONSTRAINT pk_PersonID
- Föregående sida SQL Unik
- Nästa sida SQL Foreign Key