SQL da CHECK va DEFAULT Constraints
SQL da CHECK va DEFAULT cheklovlari ma’lumotlar bazasining yaxlitligini va to‘g‘riligini ta’minlashda muhim rol o‘ynaydi. Ular jadvalga ma’lumotlar kiritishda ma'lum shartlar va standart qiymatlar belgilash imkonini beradi.
1 CHECK Constraint
CHECK cheklovi jadvaldagi ustunlar uchun ma'lum shartlar qo‘yish imkonini beradi. Bu cheklov yordamida ustunda saqlanadigan qiymatlar ma'lum bir shartga mos bo‘lishi kerakligini belgilash mumkin. Masalan, foydalanuvchining yoshini faqat musbat son sifatida kiritish, yoki to‘lov miqdorini minimal qiymatdan kichik bo‘lmasligini ta'minlash.
Sintaksis:
Misol 1: Foydalanuvchining yoshini 18 yoshdan katta qilish uchun CHECK
cheklovi ishlatiladi:
Bu misolda Employees
jadvalida Age
ustuniga CHECK
cheklovi qo‘shilgan, ya'ni faqat 18 yoshdan katta bo‘lgan ma'lumotlar kiritilishi mumkin.
Misol 2: Buyurtma miqdorini faqat musbat sonlar bilan cheklash:
Bu misolda Orders
jadvalidagi Quantity
ustuniga faqat musbat sonlar kiritilishi mumkin. Agar qiymat 0 yoki salbiy bo‘lsa, xatolik yuz beradi.
CHECK cheklovi faqat kiritilayotgan yoki yangilanayotgan qiymatlar bilan ishlaydi va ular ma'lum shartlarga mos bo‘lishi kerak.
2 DEFAULT Constraint
DEFAULT cheklovi ustun uchun standart qiymat belgilash imkonini beradi. Bu cheklov ustun uchun qiymat kiritilmagan holatda avtomatik ravishda o‘rnatilgan standart qiymatni qo‘llaydi. DEFAULT cheklovi ma'lumotlar bazasiga yangi ma’lumot qo‘shishda ustun uchun qiymat kiritish shart emasligini ta'minlaydi.
Sintaksis:
Misol 1: Agar foydalanuvchining ishga qabul qilingan sanasi kiritilmasa, hozirgi sana (CURRENT_DATE) avtomatik ravishda o‘rnatilsin:
Bu misolda HireDate
ustuni uchun DEFAULT cheklovi qo‘llangan, ya'ni agar foydalanuvchi ishga qabul qilingan sanani kiritmasa, tizim avtomatik ravishda hozirgi sanani qo‘yadi.
Misol 2: Agar to‘lov miqdori kiritilmasa, uning standart qiymati 0 bo‘lsin:
Bu misolda Amount
ustuni uchun 0 qiymati standart sifatida belgilangan. Agar foydalanuvchi to‘lov miqdorini kiritmasa, 0 qiymati avtomatik ravishda qo‘llanadi.
3 CHECK va DEFAULT Cheklovlarini Kombinatsiya qilish
CHECK va DEFAULT cheklovlarini birgalikda ishlatish mumkin. Masalan, agar foydalanuvchi miqdorni kiritmasa, avtomatik ravishda 0 bo‘lsa, ammo miqdor har doim musbat bo‘lishi kerak.
Misol:
Bu misolda Quantity
ustuni uchun 0 qiymati default sifatida qo‘yilgan, ammo CHECK
cheklovi yordamida Quantity
qiymati salbiy bo‘lmasligi kerak.
4 DEFAULT va NULL Qiymatlari
Agar DEFAULT cheklovi qo‘yilgan ustunda ma’lumot kiritilmasa, tizim avtomatik ravishda standart qiymatni belgilaydi. Agar DEFAULT cheklovi o‘rnatilmagan bo‘lsa, va ustun NULL
qiymatini qo‘llashga ruxsat berilsa, ustunda qiymat bo‘sh (NULL) bo‘lishi mumkin.
Misol:
Bu misolda Age
ustuni uchun DEFAULT NULL
qiymati belgilangan, ya’ni agar foydalanuvchi yoshni kiritmasa, ustun NULL bo‘ladi.
Xulosa
CHECK cheklovi ustundagi qiymatlarning ma'lum shartlarga mos kelishini ta'minlaydi. Bu cheklov yordamida ma’lumotlar bazasidagi ma'lumotlar to‘g‘ri bo‘lishini ta’minlash mumkin.
DEFAULT cheklovi ustun uchun standart qiymat belgilash imkonini beradi. Bu cheklov foydalanuvchi qiymat kiritmasa, avtomatik ravishda o‘rnatilgan qiymatni qo‘llashni ta’minlaydi.
Ikkala cheklov ham ma'lumotlar bazasining yaxlitligini ta'minlash, kiritilayotgan ma'lumotlar to‘g‘riligini tekshirish va foydalanuvchilarga qulaylik yaratish uchun ishlatiladi.
Last updated