Junior
რა არის პირველადი გასაღები მონაცემთა ბაზებში?
sobes.tech AI
პასუხი AI-სგან
მთავარი გასაღები — ეს არის სვეტი ან სვეტების ჯგუფი მონაცემთა ბაზის ცხრილში, რომელიც უნიკალურად იდენტიფიცირებს ამ ცხრილის თითოეულ სვეტს.
ძირითადი მახასიათებლები:
- უნიკალურობა: თითოეული მთავარი გასაღების მნიშვნელობა უნდა იყოს უნიკალური ცხრილში.
- NULL არ არის (NOT NULL): მთავარი გასაღები არ უნდა შეიცავდეს
NULLმნიშვნელობას. - ტევადობა: რეკომენდირებულია, რომ მთავარი გასაღების მნიშვნელობები არ შეიცვალოს.
მიზანი:
- მონაცემთა მთლიანობის უზრუნველყოფა (ობიექტები).
- ურთიერთობების დამყარება ცხრილებს შორის (საკრედიტო გასაღებები მითითებულია მთავარ გასაღებებზე).
- სარეკლამო ოპტიმიზაცია (სხვადასხვა ინდექსების გამოყენება).
SQL-ში მთავარი გასაღებით ცხრილის შექმნის მაგალითი:
CREATE TABLE Customers (
CustomerID int NOT NULL, // სვეტი მთავარი გასაღებისთვის
LastName varchar(255) NOT NULL,
FirstName varchar(255),
CONSTRAINT PK_Customer PRIMARY KEY (CustomerID) // მთავარი გასაღების განსაზღვრა
);
მთავარი გასაღები შეიძლება იყოს კომპოზიციური, რამდენიმე სვეტით:
CREATE TABLE OrderItems (
OrderID int NOT NULL,
ProductID int NOT NULL,
Quantity int,
CONSTRAINT PK_OrderItem PRIMARY KEY (OrderID, ProductID) // კომპოზიციური მთავარი გასაღები
);
ხშირად გამოიყენება ავტომატური მნიშვნელობების გენერირება — მაგალითად, ავტომატური ზრდა:
CREATE TABLE Products (
ProductID int NOT NULL IDENTITY(1,1), // ავტომატურად ზრდადი მთავარი გასაღები
ProductName varchar(255) NOT NULL,
CONSTRAINT PK_Product PRIMARY KEY (ProductID)
);