SQL PRIMÊRE SLEUTEL Beperking
SQL PRIMÊRE SLEUTEL Beperking
Die PRIMARY KEY
beperking identifiseer elke rekord in 'n tabel uniek.
Primêre sleutels moet UNIEKE waardes bevat, en kan nie NULL-waardes bevat nie.
'n Tabel kan slegs EEN primêre sleutel hê; en in die tabel kan hierdie primêre sleutel uit enkele of veelvuldige kolomme (velde) bestaan.
SQL PRIMÊRE SLEUTEL op CREATE TABLE
Die volgende SQL skep 'n PRIMARY KEY
op die "ID" kolom wanneer die "Persone" tabel geskep word:
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
);
Om die naam van 'n beperking toe te laat, en om 'n beperking op veelvuldige kolomme PRIMARY KEY
te definieer
, gebruik die volgende SQL-sintaksis:PRIMARY KEY
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)
);
Let wel: In die voorbeeld hierbo is daar net EEN
PRIMARY KEY
(PK_Person). Die WAARDE van die primêre sleutel bestaan egter uit TWEE KOLOMME (ID + Van).
SQL PRIMÊRE SLEUTEL op ALTER TABEL
Om 'n PRIMARY KEY
beperking op die "ID"-kolom te skep wanneer die tabel reeds geskep is, gebruik die volgende SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD PRIMARY KEY (ID);
Om die naam van 'n beperking toe te laat, en om 'n beperking op veelvuldige kolomme PRIMARY KEY
te definieer
, gebruik die volgende SQL-sintaksis:PRIMARY KEY
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);
Let wel: As jy gebruik ALTER TABLE
om 'n primêre sleutel by te voeg, moet die primêre sleutelkolom(s) verklaar word dat dit nie NULL-waardes bevat nie (toe die tabel die eerste keer geskep is).
LAAT 'n PRIMÊRE SLEUTEL-beperking
Om 'n PRIMARY KEY
beperking te laat vaar, gebruik die volgende SQL:
MySQL:
ALTER TABLE Persons
DROP PRIMARY KEY;
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT PK_Person;