PRIMARY KEY
PRIMARY KEY
PRIMARY KEY cheklovi jadvaldagi har bir yozuvni noyob tarzda aniqlaydi.
Jadvalda faqat bitta asosiy kalit bo‘lishi mumkin, u bitta yoki bir nechta maydonlardan iborat bo‘lishi mumkin.
SQL PRIMARY KEY on CREATE TABLE
Quyidagi SQL "Shaxslar" jadvali yaratilganda "ID" ustunida ASOSIY KALT hosil qiladi:
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
);PRIMARY KEY cheklovini nomlashga ruxsat berish va bir nechta ustunlar uchun PRIMARY KEY cheklovini aniqlash uchun quyidagi SQL sintaksisidan foydalaning:
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)
);Eslatma: Yuqoridagi misolda faqat BITTA ASOSIY KALT (PK_Person) mavjud. Biroq, asosiy kalitning QIYMATI IKKI USTUNDAN (ID + Familiya) iborat.
SQL PRIMARY KEY on ALTER TABLE
Jadval allaqachon yaratilganda "ID" ustunida ASOSIY KEY cheklovini yaratish uchun quyidagi SQL dan foydalaning:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD PRIMARY KEY (ID);PRIMARY KEY cheklovini nomlashga ruxsat berish va bir nechta ustunlar uchun PRIMARY KEY cheklovini aniqlash uchun quyidagi SQL sintaksisidan foydalaning:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);Eslatma: Agar siz asosiy kalitni qo‘shish uchun ALTER TABLE iborasidan foydalansangiz, asosiy kalit ustun(lar)i allaqachon NULL qiymatlarni o‘z ichiga olmaydi deb e’lon qilingan bo‘lishi kerak (jadval birinchi marta yaratilganda).
PRIMARY KEY cheklovini o‘chirish (DROP)
PRIMARY KEY cheklovini o‘chirish uchun quyidagi SQL’dan foydalaning:
MySQL:
ALTER TABLE Persons
DROP PRIMARY KEY;SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT PK_Person;W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
