Junior
Kas yra pirminis raktas duomenų bazėse?
sobes.tech AI
Atsakymas iš AI
Pirmasis raktas yra stulpelis arba stulpelių rinkinys duomenų bazės lentelėje, kuris unikalų būdu identifikuoja kiekvieną šios lentelės eilutę.
Pagrindinės savybės:
- Unikalumas: Kiekviena pirminio rakto reikšmė turi būti unikali lentelėje.
- Ne null (NOT NULL): Pirminis raktas negali turėti
NULLreikšmės. - Stabilumas: Rekomenduojama, kad pirminio rakto reikšmės nekistų.
Tikslas:
- Duomenų vientisumo užtikrinimas (subjektai).
- Ryšių tarp lentelių nustatymas (svetimi raktai nurodo į pirminius raktus).
- Užklausų optimizavimas (dažnai naudojama indeksavimui).
SQL pavyzdys, kaip sukurti lentelę su pirminiu raktu:
CREATE TABLE Customers (
CustomerID int NOT NULL, // Stulpelis pirminiam raktui
LastName varchar(255) NOT NULL,
FirstName varchar(255),
CONSTRAINT PK_Customer PRIMARY KEY (CustomerID) // Pirminio rakto apibrėžimas
);
Pirminis raktas gali būti sudėtinis, sudarytas iš kelių stulpų:
CREATE TABLE OrderItems (
OrderID int NOT NULL,
ProductID int NOT NULL,
Quantity int,
CONSTRAINT PK_OrderItem PRIMARY KEY (OrderID, ProductID) // Sudėtinis pirminis raktas
);
Dažnai naudojama automatinė reikšmių generacija pirminiam raktui (pvz., auto-increment):
CREATE TABLE Products (
ProductID int NOT NULL IDENTITY(1,1), // Automatiškai didėjantis pirminis raktas
ProductName varchar(255) NOT NULL,
CONSTRAINT PK_Product PRIMARY KEY (ProductID)
);