Ob'ektlarni aniqlash va ular o'rtasidagi munosabatlar. Ma'lumotlar bazasi mavzu sohasi va uning modeli Atributning ixtiyoriy ekanligini aniqlash

3 . Ma'lumotlar modeli komponentlari

Subyekt, sub'ekt ta'rifi, sub'ektlar haqidagi ma'lumot manbalari

Ma'lumotlar modeli - mavzu sohasining kontseptual tavsifi - ma'lumotlar bazasini loyihalashning eng mavhum darajasidir. Ma'lumotlar modeli ob'ektlar, atributlar, domenlar va munosabatlardan iborat. Keyinchalik - har bir element haqida batafsil.

3.1 Tashkilotlar

Ob'ekt - bu ma'lumotlar bazasida saqlanishi kerak bo'lgan narsa.

Ma'lumotlar bazalarini loyihalashda hozirgi vaziyatni tasvirlash kifoya - va ko'pchilik otlar va ba'zi fe'llar ob'ektlar uchun nomzod bo'ladi. Masalan: "Mijozlar tovar sotib oladilar. Xodimlar xaridorlarga tovar sotadilar. Yetkazib beruvchilar tovar etkazib beradilar" - mijozlar, tovarlar, xodimlar va etkazib beruvchilar sub'ektlardir. "Sotib olish" va "sotish" fe'llari ham sub'ektlardir (garchi ular xaridor va sotuvchi nuqtai nazaridan farq qiladigan bir xil shaxs bo'lishi mumkin).

Ma'lumotlar bazasini loyihalashda sub'ektlar to'g'risidagi asosiy ma'lumot manbai mijoz bilan uning biznes jarayonlarini tushunish uchun suhbatdir. Bundan tashqari, biznes jarayonlarida qo'llaniladigan standart hujjatlar tahlil qilinadi: shakllar, hisobotlar, ko'rsatmalar va boshqalar. Bunday ro'yxatni olgandan so'ng, uning to'liqligi va izchilligini tekshirish, shuningdek, dublikatlarni - turli xil so'zlar bilan chaqiriladigan bir xil shaxslarni va aslida boshqacha bo'lgan, ammo bir xil atama bilan tavsiflangan shaxslarni aniqlash kerak.

Tashkilotlar o'ziga xos tushunchalarni (mijozlar, tovarlar, qo'ng'iroqlar) va mavhum tushunchalarni (agent mijoz uchun javobgardir, talaba kursga yoziladi) modellashtirishi mumkin.

ER modeli tushunchasi. Ob'ekt tushunchasi. atributlar. Atribut turlari

1. Ma'lumotlar bazasini loyihalashda dasturchi qanday muammolarga duch kelishi mumkin?

Ma'lumotlar bazasini loyihalash va dasturiy mahsulotni ishlab chiqishda eng muhim muammo - ishlab chiquvchi va mijoz o'rtasidagi o'zaro munosabatlar muammosi. Ishlab chiquvchining vazifasi ma'lumotlar bazasini boshqarish dasturiy mahsulotini ishlab chiqishda mijozning istaklarini eng aniq tarzda qayta tiklashdir. Ishlab chiquvchi hal qilishi kerak bo'lgan asosiy muammo - bu ma'lumotlar bazasini to'g'ri qurish, aniqrog'i ma'lumotlar bazasi sxemasi (tuzilmasi).

Bundan tashqari, ishlab chiquvchi qo'shimcha ravishda boshqa qiyinchiliklarga duch keladi, ular orasida:

  • samarali algoritmlarni izlash;
  • tegishli ma'lumotlar tuzilmalarini tanlash;
  • murakkab kodni tuzatish va sinovdan o'tkazish;
  • dastur interfeysining dizayni va qulayligi.

Rivojlanish bosqichida dasturiy ta'minot ma'lumotlar bazasi menejeri, ishlab chiquvchi mijozning talablarini batafsil o'rganishi kerak. Ma'lumotlar bazasi shunday tuzilgan bo'lishi kerakki, u tushunarli bo'lishi kerak, hal qilinayotgan muammoni eng aniq aks ettiradi va ma'lumotlarda ortiqcha narsalarni o'z ichiga olmaydi.

Ma'lumotlar bazasini ishlab chiqish (loyihalash) jarayonini engillashtirish uchun semantik modellar ma'lumotlar. Uchun turli xil turlari Eng mashhur ma'lumotlar bazasi ER ma'lumotlar modeli (Entity-Relationship modeli).

2. ER-modeli (Entity-relationship model) nima? Nima uchun ER modelini ishlab chiqish kerak?

ER-modeli (Entity-relationship modeli yoki Entity-relationship diagrammasi) maʼlumotlar bazasini loyihalash jarayonini soddalashtirish uchun moʻljallangan semantik maʼlumotlar modelidir. ER modelidan barcha turdagi ma'lumotlar bazalarini yaratish mumkin: relyatsion, ierarxik, tarmoq, ob'ekt. ER modeli "ob'ekt", "munosabatlar" va "atribut" tushunchalariga asoslanadi.

Katta ma'lumotlar bazalari uchun ER modelini yaratish, ayniqsa, ma'lumotlar bazasi allaqachon ishlayotgan yoki sinov bosqichida bo'lsa, tuzatish juda qiyin bo'lgan dizayn xatolaridan qochadi. Ma'lumotlar bazasi strukturasini loyihalashdagi xatolar ushbu ma'lumotlar bazasini boshqaradigan dasturiy ta'minot kodini o'zgartirishga olib kelishi mumkin. Natijada vaqt, pul va inson resurslaridan samarasiz foydalaniladi.

ER modeli ma'lumotlar bazasining vizual grafik diagrammalar ko'rinishidagi tasviridir. ER modeli ma'lum bir mavzu sohasini belgilaydigan jarayonni ingl. Ob'ektlar bilan munosabatlar diagrammasi - ob'ektlar, atributlar va munosabatlarni grafik tarzda ifodalovchi diagramma.

ER modeli faqat modellashtirishning kontseptual darajasidir. ER modelida amalga oshirish tafsilotlari mavjud emas. Xuddi shu ER modeli uchun uni amalga oshirish tafsilotlari farq qilishi mumkin.

3. Ma'lumotlar bazasidagi ob'ekt nima? Misollar

Ma'lumotlar bazasidagi ob'ekt - bu ma'lumotlar bazasi ishlab chiqilayotgan predmet sohasining mohiyatiga ko'ra farqlanishi mumkin bo'lgan ma'lumotlar bazasidagi har qanday ob'ekt. Ma'lumotlar bazasi dizayneri ob'ektlarni to'g'ri aniqlay olishi kerak.

1-misol Kitob do'koni ma'lumotlar bazasida quyidagi ob'ektlarni ajratib ko'rsatish mumkin:

  • kitob;
  • provayder;
  • do'konni joylashtirish.

2-misol Ayrim ta'lim muassasasining o'quv jarayonini hisobga olish ma'lumotlar bazasida quyidagi sub'ektlarni ajratib ko'rsatish mumkin:

  • talabalar (o'quvchilar);
  • o'qituvchilar;
  • guruhlar;
  • o‘rganilayotgan fanlar.
4. Ob'ekt turlarining qanday turlari mavjud? ER modelida ob'ektlar turlarini belgilash

"Sub'ekt" - "munosabatlar" modelida ob'ektning ikki turi mavjud:

  • zaif turi. Ushbu ob'ekt turi kuchli ob'ektga bog'liq;
  • kuchli turi. Bu hech kimga bog'liq bo'lmagan mustaqil turdagi mavjudotdir.

1-rasmda ER modelidagi zaif va kuchli ob'ekt turi belgilari ko'rsatilgan.

Guruch. 1. Kuchli va kuchsiz shaxs turlarini belgilash

5. Atributlar nima uchun mo‘ljallangan? Atribut turlari. ER modelida atributlarni belgilash

Har bir ob'ekt turi o'ziga xos atributlar to'plamiga ega. Atributlar ma'lum bir ob'ektni tavsiflash uchun mo'ljallangan.

Atributlarning quyidagi turlari mavjud:

  • oddiy atributlar. Bular birikma atributlarning bir qismi bo'lishi mumkin bo'lgan atributlardir. Bu atributlar bir komponentdan iborat. Masalan, oddiy atributlarga quyidagilar kiradi: kutubxonadagi kitob yoki ta’lim muassasasidagi talaba kursining kodi;
  • kompozitsion atributlar. Bular bir nechta oddiy atributlardan tashkil topgan atributlardir. Masalan, yashash manzili mamlakat nomi, yashash joyi, ko'cha, uy raqamini o'z ichiga olishi mumkin;
  • aniq atributlar. Bular ayrim ob'ektlar uchun faqat bitta qiymatni o'z ichiga olgan atributlardir. Masalan, "Talaba" ob'ekt turi uchun "Baho kitobi raqami" atributi bir ma'noli emas, chunki talaba faqat bitta baho kitobi raqamiga (bitta qiymat) ega bo'lishi mumkin;
  • polisemantik atributlar. Bular bir nechta qiymatlarni o'z ichiga olishi mumkin bo'lgan atributlardir. Masalan, "Talaba" ob'ekti uchun "Telefon raqami" ko'p qiymatli atributi, chunki talaba bir nechta telefon raqamlariga ega bo'lishi mumkin (uy, mobil va boshqalar);
  • o'zboshimchalik bilan atributlar. Bu atributlar bo'lib, ularning qiymati boshqa atributlarning qiymatlari asosida shakllanadi. Misol uchun, talabaning joriy o'qish yili joriy o'qish yili va talabaning kirish yili o'rtasidagi farq asosida hisoblanishi mumkin. o'quv muassasasi(agar talaba o'qishda muammolarga duch kelmasa va "Ma'lumotlar bazalari va bilimlarni tashkil etish" fanini yaxshi o'rgangan bo'lsa).

ER diagrammasida atributlar 2-rasmda ko'rsatilganidek belgilanadi. Rasmdan ko'rinib turibdiki, har qanday atribut ellips ichida nomi bo'lgan ellips sifatida belgilanadi. Agar atribut asosiy kalit bo'lsa, unda uning nomi tagiga chiziladi.

Shakl 2. ER modeli diagrammalarida atributlarning ko'rinishi

6. Haqiqiy ma'lumotlar bazalari va ular boshqaradigan dasturlarda ER modelining ob'ekt turlari va atributlari qanday amalga oshiriladi?

Ma'lumotlar bazasini boshqarish dasturlarini ishlab chiqishda bir nechta yondashuvlarga rioya qilgan holda ob'ektlar turlari va ularning atributlari turli yo'llar bilan ifodalanishi mumkin:

  • ma'lumotlar manbai sifatida taniqli texnologiyani tanlang (masalan, Microsoft SQL Server, Oracle Database, Microsoft Access, Microsoft ODBC Data Source va boshqalar), allaqachon o'rganilgan, sinovdan o'tgan, standartlashtirilgan va ma'lumotlar bazasini boshqarishning katta to'plamiga ega. asboblar;
  • o'zingizning ma'lumotlar bazasi formatingizni ishlab chiqing va uni qayta ishlash usullarini qo'llang va Import/Eksport kabi maxsus buyruqlar shaklida ma'lum ma'lumotlar manbalari bilan o'zaro aloqani amalga oshiring. Bunday holda, siz o'z qo'llaringiz bilan ma'lumotlar bazasini ishonchli ishlashini ta'minlash va ta'minlash uchun barcha muntazam ishlarni dasturlashingiz kerak bo'ladi;
  • yuqoridagi ikkita yondashuvning kombinatsiyasini amalga oshirish. Zamonaviy dasturiy ta'minotni ishlab chiqish vositalari murakkab to'plamlarni qayta ishlash va ulardagi ma'lumotlarni (to'plamlar, massivlar, vizualizatsiya komponentlari va boshqalar) vizualizatsiya qilish uchun kuchli kutubxonalar to'plamiga ega.

Agar ma'lumotlar bazasi taniqli relyatsion DBMSda (masalan, Microsoft Access, Microsoft SQL Server va boshqalar) amalga oshirilgan bo'lsa, u holda ob'ektlar turlari jadvallar bilan ifodalanadi. ER modelining atributlari jadval maydonlariga mos keladi. Ma'lumotlar bazasi jadvalidagi bitta yozuv bitta ob'ekt misolini ifodalaydi.

Har bir atribut turi quyidagicha amalga oshiriladi:

  • oddiy atribut yoki bir ma'noli atribut har qanday dasturlash tilida mavjud bo'lgan asosiy turlar to'plami bilan ifodalanishi mumkin. Masalan, butun son atributlari int , integer , uint va boshqalar turi bilan ifodalanadi; kasr qismini o'z ichiga olgan atributlar float, double turi bilan ifodalanishi mumkin; string tipidagi string atributlari va boshqalar;
  • kompozit atribut bir nechta ichki joylashtirilgan oddiy atributlarni o'z ichiga olgan ob'ektdir. Masalan, Microsoft Access ma'lumotlar bazasida ma'lum bir jadvalning kompozit atributi oddiy turlar (maydonlar) to'plami asosida tuzilishi mumkin. Dasturlash tillarida maydonlar ittifoqi tuzilmalar yoki sinflar tomonidan amalga oshiriladi;
  • ko'p qiymatli atribut massiv yoki oddiy yoki murakkab atributlar to'plami sifatida amalga oshirilishi mumkin;
  • ixtiyoriy atribut jadvalga kirishda hisoblangan qo'shimcha maydon tomonidan amalga oshiriladi. Bunday maydon hisoblangan maydon deb ataladi va jadvaldagi boshqa maydonlar asosida tuziladi;
  • asosiy kalit bo'lgan atribut butun son, satr yoki boshqa har qanday tartib turi bo'lishi mumkin. Bunday holda, birlamchi kalitga mos keladigan har bir jadval katakchasining qiymati noyobdir. Ko'pincha, asosiy kalit butun son turidir (int , integer ).

Agar ma'lumotlar bazasi noyob formatda amalga oshirilgan bo'lsa, u holda ob'ektlar turlarini sinflar yoki tuzilmalar sifatida ko'rsatish eng qulaydir. Ob'ekt atributlari sinfning maydonlari (ichki ma'lumotlari) sifatida amalga oshiriladi. Sinf usullari sinf maydonlarini (atributlarini) zarur qayta ishlashni amalga oshiradi. Sinflar o'rtasidagi o'zaro ta'sir (aloqa) taniqli dizayn naqshlaridan foydalangan holda maxsus ishlab chiqilgan interfeyslar yordamida amalga oshiriladi.

7. "Student" ob'ekt turi uchun ER modelining bir qismiga misol

Yuqoridagi misol talaba ob'ekti turi uchun ER modelining bir qismini ko'rsatadi.

Shakl 3. “Talaba” ob’ekt turi uchun ER modelining fragmenti

Yuqoridagi rasmda ma'lumotlar bazasida (dasturda) quyidagi turlarga ega bo'lishi mumkin bo'lgan quyidagi atributlar e'lon qilinadi:

  • atribut Birlamchi kalit - avtomatik ravishda hosil bo'ladigan yagona butun son qiymati. DBMSda bu hisoblagich maydoni;
  • entry year atributi oddiy atribut bo'lib, butun son qiymati sifatida amalga oshirilishi mumkin (int , integer );
  • atribut Telefon raqami - massiv yoki to'plam sifatida amalga oshirilishi mumkin bo'lgan ko'p qiymatli atribut va hokazo;
  • xususiyat Ro'yxatga olish kitobi raqami- belgilar qatori sifatida amalga oshirilishi mumkin bo'lgan oddiy atribut, chunki baho kitobi raqami raqamlardan tashqari harflarni ham o'z ichiga olishi mumkin;
  • atributi Mamlakat, Shahar, Ko'cha, Uy raqami kompozit atributni tashkil etuvchi atributlardir Manzil. Bu atributlarning barchasi string (matn) tipidagi bo'lishi mumkin (string , Text );
  • Familiya, Ism, Ota ismi atributi oddiy atributlar bo'lib, Talaba nomi birikma atributining bir qismidir. Bu atributlarning barchasi string (matn) tipidagi bo'lishi mumkin (string , Text );
  • Tug'ilgan kun atributi Sana turining oddiy atributidir (DateTime );
  • xususiyat Talabalik yoshi joriy (tizim) sana va Tug'ilgan kun atributining qiymati o'rtasidagi farq sifatida belgilangan hisoblangan maydon.

JB modelining asosiy tushunchalari "ob'ekt-munosabat" (ER-model): ob'ektlar, ular o'rtasidagi munosabatlar va ularning atributlari (xususiyatlari).

Mohiyat- ko'rib chiqilayotgan predmet sohasidagi har qanday konkret yoki mavhum ob'ekt. Ob'ektlar - bu ma'lumotlar bazasida saqlanadigan ma'lumotlarning asosiy turlari (relyatsion ma'lumotlar bazasida har bir ob'ektga jadval beriladi). Tashkilotlar tarkibiga quyidagilar kiradi: talabalar, mijozlar, bo'limlar va boshqalar. Ob'ekt namunasi va ob'ekt turi turli tushunchalardir. Ob'ekt turi tushunchasi bir butun sifatida harakat qiluvchi bir hil shaxslar, ob'ektlar yoki hodisalar (masalan, talaba, mijoz va boshqalar) to'plamini anglatadi. Ob'ekt misoli, masalan, to'plamdagi ma'lum bir shaxsga tegishli. Ob'ekt turi talaba bo'lishi mumkin va misol Petrov, Sidorov va boshqalar bo'lishi mumkin.

Xususiyat predmet sohasidagi sub'ektning mulki hisoblanadi. Uning nomi ma'lum bir ob'ekt turi uchun yagona bo'lishi kerak. Masalan, tashkilot talabasi uchun quyidagi atributlardan foydalanish mumkin: familiyasi, ismi, otasining ismi, tug'ilgan sanasi va joyi, pasport ma'lumotlari va boshqalar. Relyatsion ma'lumotlar bazasida atributlar jadval maydonlarida saqlanadi.

Ulanish- predmet sohasidagi sub'ektlar o'rtasidagi munosabatlar. Aloqalar - bu ma'lumotlar bazasi qismlari o'rtasidagi bog'lanish (relyatsion ma'lumotlar bazasida bu jadval yozuvlari orasidagi bog'lanish).

Esanslar turi bo'yicha tasniflangan ma'lumotlar bo'lib, munosabatlar bu turdagi ma'lumotlarning bir-biri bilan qanday bog'liqligini ko'rsatadi. Agar biz ma'lum bir predmet sohasini ob'ekt - munosabatlar nuqtai nazaridan tavsiflasak, u holda biz ushbu ma'lumotlar bazasi uchun ob'ekt - munosabatlar modelini olamiz.

o'q bog'lanish belgisidir: birdan - ko'p.

ER-modellarining asosiy afzalliklari: * ko'rinish; * modellar ko'p sonli ob'ektlar va atributlar bilan ma'lumotlar bazalarini loyihalash imkonini beradi;

ER-modellarning asosiy elementlari: * ob'ektlar (ob'ektlar); * obyekt atributlari; * ob'ektlar orasidagi bog'lanishlar.

Ob'ektlar o'rtasidagi munosabatlar quyidagilar bilan tavsiflanadi: * munosabatlar turi (1:1, 1:N, N:M); * a'zolik toifasi. Sinf majburiy yoki ixtiyoriy bo'lishi mumkin. Agar ob'ektning har bir misoli munosabatlarda ishtirok etsa, a'zolik sinfi majburiy, aks holda u ixtiyoriydir.


Ma'lumotlarni normallashtirish tushunchasi. funktsional bog'liqlik.

Normalizatsiya - bu ularning asosiy kaliti va mavjud munosabatlariga asoslangan munosabatlarni tahlil qilishning rasmiy usuli. Uning vazifasi bitta ma'lumotlar bazasi sxemasini (yoki munosabatlar to'plamini) boshqa sxema bilan almashtirishdan iborat bo'lib, unda munosabatlar oddiyroq va muntazamroq tuzilishga ega.

funktsional bog'liqlik. X va Y qandaydir munosabatning ikkita atributi bo'lsin. Agar istalgan vaqtda X ning har bir qiymati Y atributining ko‘pi bilan bitta qiymatiga to‘g‘ri kelsa, Y X ga funksional bog‘liq deyiladi.

Funktsional bog'liqlik X -\u003e Y sifatida belgilanadi.

Munosabat talabasi S(Ns, Fio, Ngr, Addr, Tel). Fio, Ngr, Addr, Tel atributlarining har biri funksional jihatdan Ns atributiga bog'liq.

Demak, normallashgan munosabatda barcha asosiy bo'lmagan atributlar funksional jihatdan munosabat kalitiga bog'liqdir. S munosabatining kaliti Ns atributidir.

Asosiy qoida ob'ektlar jadvallarini yaratishda bu "har bir ob'ekt - alohida jadval".

Ob'ektlar jadvali maydonlari ikki xil bo'lishi mumkin: kalit Va kalit bo'lmagan. Deyarli barcha relyatsion DBMSlarda jadvalga kalitlarning kiritilishi jadval yozuvlaridagi qiymatlarning kalit bo'yicha o'ziga xosligini ta'minlash, jadval yozuvlarini qayta ishlashni tezlashtirish, shuningdek, yozuvlarni kalit maydonlardagi qiymatlar bo'yicha avtomatik ravishda saralash imkonini beradi.

Odatda aniqlash uchun etarli oddiy kalit, kamroq tez-tez - kiriting kompozitsion kalit. Kompozit kalitli jadval, masalan, xodimlar ro'yxatini (familiyasi, ismi va otasining ismi) saqlash uchun jadval bo'lishi mumkin, unda ismlar mavjud. Ba'zi ma'lumotlar bazasida foydalanuvchilarga avtomatik ravishda yaratilgan kalitlarni raqamlash maydonini aniqlash taklif qilinadi (Access-da bu "hisoblagich" tipidagi maydon), bu jadval yozuvlarining o'ziga xosligi muammosini hal qilishni soddalashtiradi.

Ba'zan ob'ektlar jadvallarida ob'ektlarning xususiyatlarini yoki xususiyatlarini tavsiflovchi maydonlar mavjud. Agar jadvalda ushbu maydonlar uchun sezilarli miqdordagi takrorlanishlar mavjud bo'lsa va bu ma'lumotlar sezilarli miqdorga ega bo'lsa, ularni alohida jadvalga ajratish yaxshiroqdir (qoidaga rioya qilgan holda: "har bir ob'ekt - alohida jadval"). Bundan tashqari, agar xususiyatlar o'zaro bog'liq bo'lsa, qo'shimcha jadval tuzilishi kerak.

Ob'ektlar jadvallarini qayta ishlashda quyidagilarni yodda tuting. Yangi ob'ektni qo'shish va o'zgartirish oson, lekin uni o'chirishda unga havolalar jadvallaridagi barcha havolalar yo'q qilinishi kerak, aks holda havolalar jadvallari noto'g'ri bo'ladi. Ko'pgina zamonaviy DBMSlar bunday operatsiyalarda noto'g'ri harakatlarni bloklaydi.

Yozuvlar bog'langan jadvallar ob'ektlar o'rtasidagi munosabatlarni ko'rsatish uchun mo'ljallangan, ular haqidagi ma'lumotlar tegishli ob'ektlar jadvallarida joylashgan.

Odatda bitta havola jadvali ikkita ob'ektning munosabatlarini tavsiflaydi. Eng oddiy holatda ob'ektlar jadvallari bitta kalit maydoniga ega bo'lganligi sababli, havola yozuvlarining o'ziga xosligini ta'minlash uchun ikkita jadvalning havola jadvalida ikkita kalit bo'lishi kerak. Siz ob'ektlar jadvali kabi va kalitlarsiz havolalar jadvalini yaratishingiz mumkin, ammo keyin yozuvlarning o'ziga xosligini nazorat qilish foydalanuvchiga tushadi.

Keyinchalik murakkab ulanishlarni (ikkilik emas) ikkiliklarga qisqartirish kerak. N ta ob'ektning munosabatlarini tavsiflash uchun N-1 munosabatlar jadvallari kerak. O'tishli ulanishlar bo'lmasligi kerak. Aloqalarning haddan tashqari ko'pligi nomuvofiqliklarga olib keladi (oldingi bo'limdagi XODIMLAR-BO'LIM, XODIMLAR-LOYIHALAR va BO'LIM-LOYIHALAR munosabatlari misoliga qarang).

Ob'ektlarning xususiyatlari munosabatlar jadvallariga kiritilmasligi kerak, aks holda anomaliyalar muqarrar. Ularni alohida ob'ektlar jadvallarida saqlash yaxshiroqdir.


Bog'lanish jadvallari yordamida havolaning ma'lum bir turini - chiziqli yoki zaif havolani ham tasvirlash mumkin. Chiziqli munosabatlarga misol qilib, sub'ektlarning yuqori darajadagi boshqa bir ob'ektga (tugunlardan tashkil topgan tizimlar; tarkibiy qismlardan iborat dori-darmonlar; metall qotishmalari va boshqalar) tegishli bo'lgan munosabatini ko'rib chiqish mumkin. Bunday holda, havolalarni tavsiflash uchun bitta havola jadvali etarli.

Bog'lanish jadvallari bilan ishlashda shuni yodda tutish kerakki, havolalar jadvalidagi har qanday yozuv osongina o'chirilishi mumkin, chunki ob'ektlar bir muncha vaqt havolalarsiz ishlashi mumkin. Jadval yozuvlarining mazmunini qo'shish yoki o'zgartirishda mavjud ob'ektlarga havolalarning to'g'riligini nazorat qilish kerak, chunki ob'ektlarsiz ulanish mavjud emas. Ko'pgina zamonaviy ma'lumotlar bazalari ob'ektlariga havolalarning haqiqiyligini nazorat qiladi.

ostida yaxlitlik ma'lumotlar bazasining xususiyatini tushunish, ya'ni u to'liq, izchil va mavzu sohasi ma'lumotlarini etarli darajada aks ettiradi.

Farqlash jismoniy va mantiqiy yaxlitlik. Jismoniy yaxlitlik ma'lumotlarga jismoniy kirish mavjudligini va ma'lumotlar yo'qolmasligini anglatadi. Mantiqiy yaxlitlik deganda ma'lumotlar bazasida mantiqiy xatolarning yo'qligi tushuniladi, ular ma'lumotlar bazasi yoki uning ob'ektlari tuzilishini buzish, ob'ektlar orasidagi o'rnatilgan aloqalarni o'chirish yoki o'zgartirish va hokazolarni o'z ichiga oladi.Kelajakda mantiqiy yaxlitlik haqida gapiramiz.

Ma'lumotlar bazasining yaxlitligini ta'minlash butunlikni tekshirish (nazorat qilish) va ma'lumotlar bazasida nomuvofiqliklar mavjud bo'lganda uni tiklashni o'z ichiga oladi. Ma'lumotlar bazasi holatining yaxlitligi yordamida o'rnatiladi yaxlitlik cheklovlari ma'lumotlar bazasida saqlanadigan ma'lumotlar bilan qondirilishi kerak bo'lgan shartlar shaklida.

Yaxlitlik cheklovlarini ikkita asosiy turdagi cheklovlarga bo'lish mumkin: qiymat cheklovlari munosabatlarning atributlari va strukturaviy cheklovlar munosabatlar kortejlariga.

Bir misol qiymat cheklovlari relyatsion atributlar - atributlardagi bo'sh yoki takroriy qiymatlarga yo'l qo'ymaslik talabi, shuningdek atribut qiymatlarining berilgan diapazonga tegishliligini nazorat qilish. Misol uchun, ramka munosabatlari yozuvlarida tug'ilgan_tani atributining qiymatlari qabul qilish_data atributining qiymatlaridan oshmasligi kerak.

Atribut qiymatini boshqarishni amalga oshirishning eng moslashuvchan vositalari saqlangan protseduralar Va tetiklar, ba'zi ma'lumotlar bazasida mavjud.

Strukturaviy cheklovlar talablarni belgilash ob'ektning yaxlitligi Va havola yaxlitligi. Munosabatda ifodalangan har bir ob'ekt misoli faqat bitta kortejga ega. Talab ob'ektning yaxlitligi shundan iboratki, munosabatning har qanday korteji shu munosabatning boshqa kortejidan farq qilishi kerak, ya’ni boshqacha aytganda, har qanday munosabat birlamchi kalitga ega bo‘lishi kerak.

Yo'naltiruvchi yaxlitlik talabini shakllantirish kontseptsiya bilan chambarchas bog'liq xorijiy kalit. Eslatib o'tamiz, xorijiy kalitlar munosabatlarni (ma'lumotlar bazasi jadvallarini) bir-biriga bog'lash uchun ishlatiladi. Bunday holda, bitta munosabatlarning atributi (ota-ona) deyiladi xorijiy kalit bu munosabatlar, agar shunday bo'lsa asosiy boshqa munosabatlarning kaliti (bola). Chet el kaliti aniqlangan munosabat bir xil atribut asosiy kalit bo'lgan munosabatga aytiladi.

Yo'naltiruvchi yaxlitlik talabi shundan iboratki, har bir ota-jadvalning tashqi kalit qiymati uchun bir xil asosiy kalit qiymatiga ega bo'lgan bolalar jadvalida qator bo'lishi kerak. Misol uchun, agar R1 munosabati bo'lim xodimlari to'g'risidagi ma'lumotlarni o'z ichiga olgan bo'lsa va bu munosabatning Must atributi R2 munosabatining birlamchi kaliti bo'lsa, u holda bu munosabatda R1 dan har bir lavozim uchun tegishli ish haqi bilan chiziq bo'lishi kerak.

Ko'pgina zamonaviy ma'lumotlar bazasida ma'lumotlar bazasining yaxlitligini nazorat qilishni ta'minlash vositalari mavjud.

Ob'ekt - bu domen uchun muhim bo'lgan haqiqiy yoki mavhum ob'ekt. Shaxsning birlikdagi ot bilan ifodalangan nomi bo'lishi kerak

Ob'ektlarni aniqlashning norasmiy usuli - ob'ektlar, jarayonlar, rollar va boshqa tushunchalarni tavsiflovchi abstraktsiyalarni izlash. Ob'ektlarni aniqlashning rasmiy usuli - mavzu sohasining matn tavsiflarini tahlil qilish, otlarni ajratib olish va ularni abstraktsiya sifatida tanlash.

Ob'ekt namunasi bu ob'ektning o'ziga xos namunasidir. Masalan, xodim Ivanov Xodimlar sub'ektining namunasi bo'lishi mumkin.

Har bir ob'ekt quyidagi xususiyatlarga ega bo'lishi kerak:

noyob nomga ega bo'lish;

ob'ektga tegishli yoki munosabatlar orqali meros bo'lib qolgan bir yoki bir nechta atributlarga ega bo'lishi;

har bir ob'ekt misolini noyob identifikatsiya qiluvchi bir yoki bir nechta atributlarga ega.

Atribut - ko'rib chiqilayotgan ob'ekt uchun muhim bo'lgan va ob'ektning holatini aniqlash, tasniflash, miqdorni aniqlash yoki ifodalash uchun mo'ljallangan xususiyat.

Atributlarning quyidagi turlari mavjud:

oddiy - bitta ma'lumot elementidan iborat;

kompozit - bir nechta ma'lumotlar elementlaridan iborat;

noaniq - bitta ob'ekt uchun bitta qiymatni o'z ichiga oladi;

ko'p qiymatli - bitta ob'ekt uchun bir nechta qiymatlarni o'z ichiga oladi;

ixtiyoriy - bo'sh (aniqlanmagan) qiymatga ega bo'lishi mumkin;

olingan - boshqa atributning qiymatidan olingan qiymat.

Noyob identifikator - bu har bir ob'ekt misoli uchun qiymatlari birgalikda noyob bo'lgan atributlar to'plami. Identifikatordan har qanday atributni olib tashlash uning o'ziga xosligini buzadi. Noyob identifikatorlar diagrammada chizilgan.

Har bir ob'ekt boshqa sub'ektlar bilan istalgan miqdordagi munosabatlarga ega bo'lishi mumkin.

Ob'ektlar o'rtasidagi munosabatlar

Aloqa - bu ko'rib chiqilayotgan domen uchun ma'noga ega bo'lgan ob'ektlar o'rtasidagi nomlangan assotsiatsiya.

Aloqa darajasi - bu munosabatlarda ishtirok etuvchi sub'ektlar soni.

Bog'lanish kuchi - havolada ishtirok etuvchi ob'ektlar soni.

Quvvat qiymatiga qarab, ulanish uch turdan biriga ega bo'lishi mumkin:

birma-bir (1:1 ko'rsatilgan).

birdan ko'pga (1:N bilan belgilanadi).

ko'pdan ko'pga (M:N bilan belgilanadi).

Birga bir. Bunday munosabatda bir rolga ega bo'lgan ob'ekt har doim boshqa rolga ega bo'lgan bir nechta ob'ektga mos kelishini anglatadi. Har bir ob'ekt uchun ulanish darajasi 1 bo'lgani uchun ular bitta chiziq bilan bog'langan.

Birdan ko'pga. Bitta rolga ega bo'lgan ob'ekt boshqa rolga ega bo'lgan har qanday miqdordagi ob'ektlar tomonidan mos kelishi mumkin.

Ko'pdan ko'pga. Bunday holda, bog'langan ob'ektlarning har biri istalgan miqdordagi misollar bilan ifodalanishi mumkin.