Meil on küsimus aadressi kohta. Kuidas on parem viis pakiautomaadi (kaupluse/kino/treeningsaali/...) aadressi andmebaasis salvestada? Me nägime, et Omniva lehel näidatakse seda niimoodi: "Ida-Viru maakond, Kohtla-Järve linn, Ahtme linnaosa, Maleva tn, 23". Tundub, et iga koma vahel on eraldi veerg, kuhu kirjutatakse andmed ja veerude nimed oleksid "asukoht_maakond, asukoht_linn, asukoht_linnaosa, asukoht_tänav, asukoht_tänava_nr". Kas me kasutame selle viisi, või saame parema loetavuse jaoks lihtsalt salvestada kogu stringi ühe veergu nimega "asukoht"?

Postitas Erki Eessaar, 01.06.2022 00:00 (muudeti 25.01.2023 16:13)
Aadressiandmetel on keeruline struktuur ja palju erinevaid võimalikke komponente (riik, maakond, linn, vald, küla, talu, linnaosa, tänav, korter, hooneosa, ...). Erinevates riikides on võimalike komponentide hulk erinev. Kui ülesanne oleks pakkuda kasutajatele detailset aadresside otsimise võimalust, siis andmebaasi mõttes tähendaks see märkimisväärset hulka täiendavaid tabeleid, mille vahel komponentideks jagatud aadress ära jagada. Näitena saab Eesti Aadressiandmete Süsteemiga liidestumise juhendi jaotisest 3.2.4 Aadressi komponendid (tasemed) vaadata Eesti aadresside komponente.

Kui eesmärk on pakkuda taustainfot pakiautomaadi kohta (nagu antud projektis), siis piisab vabatekstilisest atribuudist aadress.

"Sulgude ette" võib tõsta Maakonna. Maakond on klassifikaator.
[Pakiautomaat]-0..*---------+asukoht-1-[Maakond]

Siit näete maakondade klassifikaatori väärtuseid.

Kui pakiautomaadid võivad olla eraldi riikides, siis tõstaksin maakonna asemel "sulgude ette" riigi.
​[Pakiautomaat]-0..*----------+asukoht-1-[Riik]

Saaksite kasutada sama riikide klassifikaatorit, mis on juba seotud olemitüübiga Isik.
Maakonna klassifikaatorit ma siis ei kasutaks, sest kõigis riikides ei pruugi olla haldusüksust "maakond" ning erinevate riikide maakondade üle võib olla raske arvet pidada.
​   
Kokkuvõttes oleks näite korral pakiautomaadi atribuudi aadress väärtuseks "Kohtla-Järve linn, Ahtme linnaosa, Maleva tn, 23" ning pakiautomaat oleks seotud maakonnaga Ida-Virumaa.

Kas postitus oli kasulik? Hinda seda!

Keskmine hinne: Pole veel hinnanguid!


← Eelmine postitus Kui tekstilist väärtust hoidev väli või olla ka tühi, kas parem on lubada NULL väärtust või tühja stringi? Kas võib olla põhjust lubada ka mõlemat? Järgmine postitus → Milliseid täiendusi tuleb arenduse tulemites (mudelid, andmebaas+rakendus) teha, kui tekivad uued nõuded, mida rakendus peab realiseerima?