Datubāzes struktūras: mantošana, klasifikācija, arks 1

Tā nu ir sanācis, ka līdz galam tās atšķirības un līdzibas izpratu vakar, tādēļ ātri jāpieraksta, lai neaizmirstu 🙂 Ja kas tās ir datu struktūras datubāzēs, kuras izmanot zīmējot ER diagrammas.

Klasifikācija:

Klasifikācijas būtība ir klasificēt pēc kāda no atribūtiem.

Apzīmē to var šādi:

Piez: ar R apzīmē realitāti, un L- lomu

Klasifikācijā iesaistītām lomām ir jābūt homogēnām, tas nozīmē, ka to lauku struktūrām savstarpēji ir jābūt vienādām.

Piem. Ir realitāte (tabula) ar atribūtiem(kolonām): L1,L2,L3 un L4

Un loma L1 un L2 ar atribūtiem: L1,L2,L3

Lomās(tas arī var būt tabulas) vienmēr būs par vienu atribūtu mazāk, jo pēc viena no atribūtiem notiek klasifikācija(nosaka to piederību lomai viens vai divi).

Iepriekšējo piemēru var iedomāties šādi:

Augstāk minētais piemērs fiziski dabā var izskatīties divos veidos:

vai nu no vienas tabulas trasformējot to uz diviem skatiem(vai citam 2 tabulām), tas izskatās šādi:

Kur piemēram skatā S1 būs visas tās rindiņas, kurās laukā L4 bija vērtība1, un skatā S2 būs rindiņas, kurās L4 laukā bija vērtība 2.

vai arī divu tabulu transformācija vienā skatā:

transformāciju vienā skatā var izdarīt ar union tipa vaicājuma palīdzību.

Kuru tieši variantu pārveidojot no ER diagrammas uz reālo datubāzi izmantot nosaka paredzamais vaicājumu biežums. Ja datus vajadzēs apstrādāt sadalīti par lomām, tad pirmais variants, ja kopā tad otrais.

No visa šī var secināt, ka klasifikācija triviāli var iedomāties, kā vaicājums tabulai ar where nosacījumu un atkarībā no tā iegūstam skatu 🙂

Mantošana

Mantošana ir tad, kad no vienas realitātes, tiek mantotas kaut kādas vērtības.

Atšķirībā no klasifikācijas, kur lomām bija jābūt vienāda tipa atribūtiem(principā viena tabula), tad pie mantošanas atribūtu skaits(un arī tips) par realitātēm var atšķirties(katra realitā var būt pilnīgi savādāka, tā tikai no augšējās realitātes manto tās atribūtus)

Piemērs:

Realitātei R1 un divi atribūti L1 un L2

Realitātei R2 un četri atribūti  L3 un L4 un L5 un L6

Realitātei R3 un trīs atribūti L7 un L8 un L9

Dzīvē tas varētu izskatīties šādi:

Ir divas dažādas tabulās, kurām pievieno klāt vēl vienu tabulu

Vai arī otrs variants apvienot to visu vienā tabulā, tikai tad, tā sastāvēs no 6 atribūtiem un rindiņā kura aprakstīs R1 un R2, būs tukši lauki L7,L8,L9 un otrādi, kuri aprakstīs R1 un R3 būs tukši lauki L3, L4,L5, L6

Arks

Pēc savas būtības ir līdzīgs mantošanai, tikai starp viņiem ir viena būtiska atšķirība:

Mantošanā R1 obligāti pieder arī realitātēm, kuras to manto, taču arka katra rindiņa var vai nu piederēt vienai realitātei vai otrai, abām vienlaicīgi piederēt nevar.

Vizuāli tā atšķirība ir attēlojama šādi:

Paskaidrojums:

Realitātes R1 eksemplārs mantošanas gadījumā pieder abām realitātēm, kas arī izriet no nosaukuma, viņu manto

Arka gadījumā R1 eksemplārs  vai nu pieder R2 vai R3, bet abām vienlaicīgi piederēt nevar

Arku līdzīgi, kā mantošanā var iedomāties kā 3() tabulu apvienojumu ar skatu palīdzību

Un otrs variants, kā tabulu R2 un R3 un ar skatiem izgūst vērtības, kas pieder R1

One comment on “Datubāzes struktūras: mantošana, klasifikācija, arks

  1. Reply AndrewBoldman Jun 5,2009 12:56 am

    Hi, cool post. I have been wondering about this topic,so thanks for writing.

Leave a Reply