Xorijiy kalit va asosiy kalit oʻrtasidagi asosiy farq shundaki, tashqi kalit asosiy kalit yoki boshqa jadvalning nomzod kalitiga ishora qiluvchi ustun yoki ustunlar toʻplamidir, asosiy kalit esa ustun yoki ustunlar toʻplamidir. bu jadvaldagi qatorni yagona aniqlash uchun ishlatilishi mumkin.
Ma'lumotlar bazasidagi satr yoki qatorlarni aniqlash yoki ularga kirish uchun ishlatilishi mumkin bo'lgan ustun yoki ustunlar to'plami kalit deb ataladi. Relyatsion ma'lumotlar bazasidagi asosiy kalit - bu jadvalning bir qatorini noyob tarzda aniqlaydigan jadvaldagi ustunlar birikmasi. Relyatsion ma'lumotlar bazasidagi tashqi kalit - bu boshqa jadvalning asosiy kalitiga mos keladigan jadvaldagi maydon. Chet el kaliti mos yozuvlar jadvallarini kesish uchun ishlatiladi.
Xorijiy kalit nima?
Xorijiy kalit ikki jadval oʻrtasidagi havola cheklovidir. U bitta jadvaldagi ustun yoki ustunlar to'plamini aniqlaydi, bu boshqa jadvaldagi ustunlar to'plamiga ishora qiluvchi, havola qilingan jadval deb ataladi. Tashqi kalit yoki havolalar jadvalidagi ustunlar havola qilingan jadvaldagi asosiy kalit yoki nomzod kalit (asosiy kalit sifatida ishlatilishi mumkin bo'lgan kalit) bo'lishi kerak. Bundan tashqari, xorijiy kalitlar ma'lumotlarni bir nechta jadvallar bo'ylab ulash imkonini beradi. Shuning uchun chet el kaliti o'zi nazarda tutilgan jadvalda ko'rsatilmagan qiymatlarni o'z ichiga olmaydi. Keyin xorijiy kalit tomonidan taqdim etilgan ma'lumotnoma bir nechta jadvallardagi ma'lumotlarni bog'lashga yordam beradi va bu normallashtirilgan ma'lumotlar bazalari uchun zarur bo'ladi. Malumot jadvalidagi bir nechta qatorlar havola qilingan jadvaldagi bitta qatorga ishora qilishi mumkin.
01-rasm: Tashqi kalit xaritalash
ANSI SQL standartida FOREIGN KEY cheklovi xorijiy kalitlarni belgilaydi. Bundan tashqari, jadvalni yaratishda tashqi kalitlarni aniqlash mumkin. Jadvalda bir nechta xorijiy kalitlar bo'lishi mumkin va ular turli jadvallarga murojaat qilishlari mumkin.
Birlamchi kalit nima?
Birlamchi kalit - relyatsion ma'lumotlar bazasi jadvalidagi qatorni yagona belgilovchi ustun yoki ustunlar birikmasi. Jadvalda ko'pi bilan bitta asosiy kalit bo'lishi mumkin. Birlamchi kalit noaniq NOT NULL cheklovini amalga oshiradi. Shuning uchun, asosiy kalitli ustunda NULL qiymatlari bo'lishi mumkin emas. Birlamchi kalit jadvaldagi oddiy atribut bo'lishi mumkin, u ijtimoiy xavfsizlik raqami kabi noyob bo'lishi kafolatlanadi yoki Microsoft SQL Serverdagi Global noyob identifikator (GUID) kabi ma'lumotlar bazasini boshqarish tizimi tomonidan yaratilgan noyob qiymat bo'lishi mumkin.
02-rasm: asosiy kalit
Bundan tashqari, ANSI SQL standartidagi PRIMARY KEY cheklovi birlamchi kalitlarni belgilaydi. Jadvalni yaratishda asosiy kalitni aniqlash ham mumkin. Bunga qo'shimcha ravishda, SQL birlamchi kalitni bir yoki bir nechta ustunlardan iborat bo'lishiga imkon beradi va birlamchi kalitga kiritilgan har bir ustun bilvosita NO NULL deb belgilanadi. Ammo baʼzi maʼlumotlar bazasini boshqarish tizimlari asosiy kalit ustunlarini NULL EMAS boʻlishini talab qiladi.
Tashqi kalit va asosiy kalit oʻrtasidagi farq nima?
Xorijiy kalit va asosiy kalit |
|
Xorijiy kalit - bu ikki jadvaldagi ma'lumotlar o'rtasidagi bog'lanishni ta'minlovchi relyatsion ma'lumotlar bazasi jadvalidagi ustun yoki ustunlar guruhi. | Birlamchi kalit - bu maxsus relyatsion ma'lumotlar bazasi jadvali ustuni yoki bir nechta ustunlar kombinatsiyasi bo'lib, barcha jadval yozuvlarini yagona aniqlash imkonini beradi. |
NULL | |
Xorijiy kalit NULL qiymatini qabul qiladi. | Asosiy kalit qiymati NULL boʻlishi mumkin emas. |
Kalitlar soni | |
Jadvalda bir nechta xorijiy kalit boʻlishi mumkin. | Jadvalda faqat bitta asosiy kalit boʻlishi mumkin. |
Takrorlash | |
Tuplar xorijiy kalit atributi uchun takroriy qiymatga ega boʻlishi mumkin. | Munosabatdagi ikkita kortejda asosiy kalit atributi uchun takroriy qiymatlar boʻlishi mumkin emas. |
Xulosa – Tashqi kalit va asosiy kalit
Tashqi kalit va asosiy kalit oʻrtasidagi farq shundaki, tashqi kalit bu asosiy kalit yoki boshqa jadvalning nomzod kalitiga ishora qiluvchi ustun yoki ustunlar toʻplamidir, asosiy kalit esa ustun yoki ustunlar toʻplamidir. jadvaldagi qatorni yagona aniqlash uchun ishlatilishi mumkin.