SQL da PRIMARY KEY va UNIQUE Bilan Ishlash
Last updated
Last updated
SQL da PRIMARY KEY va UNIQUE cheklovlari jadvaldagi ma’lumotlarni noyob (unique) qilish va ma’lumotlarning yaxlitligini ta'minlash uchun ishlatiladi. Har ikkisi ham ma’lumotlar bazasida qaytarilmas yoki takrorlanmas qiymatlarni saqlashga yordam beradi, ammo ularning ishlash printsiplari bir-biridan farq qiladi.
PRIMARY KEY — bu jadvaldagi har bir yozuvni noyob (unikal) identifikatsiya qilish uchun ishlatiladigan cheklovdir. PRIMARY KEY
ustun yoki ustunlar guruhidan tashkil topishi mumkin. Har bir jadvalda faqat bitta PRIMARY KEY
bo'lishi mumkin, va bu ustun yoki ustunlar quyidagi xususiyatlarga ega bo'ladi:
UNIQUE: PRIMARY KEY
bo‘lgan ustundagi har bir qiymat noyob bo‘lishi kerak.
NOT NULL: PRIMARY KEY
ustunidagi qiymatlar bo‘sh (NULL) bo‘lishi mumkin emas.
Sintaksis:
Misol:
Bu misolda EmployeeID
ustuni PRIMARY KEY
sifatida belgilangan, bu esa har bir xodimning EmployeeID
qiymati noyob va NULL bo'lmasligini ta'minlaydi.
UNIQUE cheklovi ham ma’lumotlarning noyobligini ta'minlaydi, lekin bir nechta UNIQUE
cheklovlari jadvalda ishlatilishi mumkin. UNIQUE
cheklovi ustunlardagi qiymatlarning takrorlanmasligini ta'minlaydi, lekin ushbu ustunlarda NULL qiymatlar mavjud bo'lishi mumkin. Bir nechta UNIQUE
cheklovlari bir vaqtning o'zida bir nechta ustunlar uchun qo'llanishi mumkin.
UNIQUE cheklovi faqat qiymatlarning noyob bo'lishini ta'minlaydi, NULL qiymatlar ko'rsatilgan ustunlar uchun ruxsat etiladi.
Bir nechta UNIQUE cheklovlari: Jadvalda bir nechta ustunda UNIQUE
cheklovlari bo'lishi mumkin.
Sintaksis:
Misol:
Bu misolda Email
ustuni uchun UNIQUE
cheklovi qo‘yilgan, ya’ni Employees
jadvalidagi har bir email qiymati noyob bo‘lishi kerak. Shu bilan birga, Email
ustunida NULL qiymatlar bo‘lishi mumkin.
PRIMARY KEY:
Har bir jadvalda faqat bitta PRIMARY KEY
bo'lishi mumkin.
PRIMARY KEY
qiymatlari NOT NULL bo'lishi kerak.
PRIMARY KEY
faqat bitta ustunda bo'lishi mumkin (bir nechta ustunli PRIMARY KEY
bo'lishi mumkin, bunday holatda bu composite key deb ataladi).
PRIMARY KEY
qiymatlari bazada har doim noyob bo‘ladi.
UNIQUE:
UNIQUE
cheklovini bir nechta ustunda qo‘llash mumkin.
UNIQUE
qiymatlari NULL bo'lishi mumkin.
Bir nechta UNIQUE
cheklovlari jadvalda ishlatilishi mumkin.
UNIQUE
qiymatlari bazada noyob bo‘ladi, lekin NULL qiymatlar bir necha bor bo‘lishi mumkin.
Agar jadvalda bir nechta ustunlarni kombinatsiya qilib, PRIMARY KEY
sifatida belgilash zarur bo'lsa, bunday holat composite primary key deb ataladi. Bu holatda bir nechta ustunlar birgalikda noyob qiymatni tashkil qiladi.
Sintaksis:
Misol:
Bu misolda OrderDetails
jadvalidagi har bir buyurtma va mahsulot juftligi (OrderID
va ProductID
) noyob bo‘lishi kerak. Ya'ni, bir xil OrderID
ga ega bo‘lgan bir nechta mahsulot bo‘lishi mumkin, lekin bir xil mahsulot bir nechta marta kiritilishi mumkin emas.
PRIMARY KEY
yoki UNIQUE
cheklovlarini jadval yaratishdan so‘ng o‘zgartirish yoki o‘chirish mumkin. Buning uchun ALTER TABLE
operatori ishlatiladi.
Cheklovni o‘chirish:
Misol:
Cheklovni o‘zgartirish: Agar PRIMARY KEY
yoki UNIQUE
cheklovini o‘zgartirish kerak bo‘lsa, uni o‘chirib, yangi cheklov qo‘yish zarur bo‘ladi.
Xulosa
SQL da PRIMARY KEY
va UNIQUE
cheklovlari ma’lumotlar bazasining yaxlitligini ta’minlashda muhim rol o'ynaydi. PRIMARY KEY
faqat bitta bo‘lishi mumkin, va uning qiymatlari NOT NULL
va noyob bo‘lishi kerak. UNIQUE
esa bir nechta ustunlarda qo‘llanilishi mumkin va qiymatlar noyob bo‘lishi kerak, lekin NULL qiymatlar ruxsat etiladi. Har ikkisi ham jadvaldagi ma’lumotlarni boshqarishda va aniqlikni ta’minlashda yordam beradi.