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)
);