Junior
Xarajat kalitining ma'lumotlar bazasidagi yaxlitligiga qanday ta'siri bor?
sobes.tech AI
AIdan javob
Xarajat kalit (foreign key) ma'lumotlarning referensial yaxlitligini ta'minlaydi, bu esa bir jadvaldagi (bolalar jadvali) qiymatlar boshqa jadvaldagi (ota jadvali) ustunidagi qiymatlar bilan mos kelishini kafolatlaydi.
Ma'lumotlarning yaxlitligiga ta'siri:
- Ota jadvaldagi mos keladigan ustunda mavjud bo'lmagan qiymatga ega yozuvlarni bolalar jadvaliga qo'shishni taqiqlaydi. Mavjud bo'lmagan ota yozuviga murojaat qiladigan satrni qo'shishga urinish xato bilan tugaydi.
- Ota jadvaldagi, bolalar jadvalida murojaat qilinadigan yozuvlarni o'chirishni cheklaydi. O'chirish harakati sozlangan (
ON DELETE) ga bog'liq:RESTRICT(standart): O'chirishni taqiqlaydi.CASCADE: Bolalar jadvalidagi bog'liq yozuvlarni o'chiradi.SET NULL: Bolalar jadvalidagi mos ustunga NULL qiymatini o'rnatadi (agar ustun NULLga ruxsat berilgan bo'lsa).NO ACTION: Standart tekshiruvdaRESTRICTga o'xshash, ammo bajarilish vaqtida farq qilishi mumkin.
- Ota jadvaldagi yozuvlarni yangilashni cheklaydi. Yangilash harakati ham sozlangan (
ON UPDATE) ga bog'liq:RESTRICT(standart): Yangilashni taqiqlaydi.CASCADE: Bolalar jadvalidagi bog'liq yozuvlarning mos qiymatini yangilaydi.SET NULL: Bolalar jadvalidagi mos ustunga NULL qiymatini o'rnatadi (agar ustun NULLga ruxsat berilgan bo'lsa).NO ACTION: Standart tekshiruvdaRESTRICTga o'xshash, ammo bajarilish vaqtida farq qilishi mumkin.
Xarajat kaliti "orqaga qarab" yozuvlarning paydo bo'lishini oldini olishga yordam beradi va jadvallar o'rtasidagi bog'liqliklarni to'g'ri saqlashni ta'minlaydi.