Andmebaaside ajaveeb

Mõtteid andmebaasidest, andmebaasisüsteemidest ja nende kavandamisest

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?

Tabeli väljast võivad väärtused puududa erinevatel põhjustel. Näiteks väärtus ei ole veel andmete sisestajateni jõudnud või sellist väärtust kunagi ei tekigi.  Üheks põhjenduseks, miks lubada tekstilises veerus NULLi ja tühja stringi oleks see, et ne...


Milliseid täiendusi tuleb arenduse tulemites (mudelid, andmebaas+rakendus) teha, kui tekivad uued nõuded, mida rakendus peab realiseerima?

Süsteemiarenduse tulemid (artefaktid) on omavahel läbipõimunud. Muutes ühte, on vaja muuta ka paljusid teisi. Toon näite. Vastuvõtuaegade süsteemis lisandus nõue, et vastuvõtt võib toimuda Interneti vahendusel, st mitte enam kindlas ruumi...


Andmebaaside aine pöörab palju tähelepanu süsteemianalüüsile. Miks see on oluline?

Oma iseseisva töö projekti tegemise käigus tuleb Teil ennast panna süsteemianalüütiku rolli.


Mis asi on register?

Andmebaas on nagu päikesesüsteem. Päikese rollis on organisatsiooni eesmärgid. Kõik mis organisatsioonis IT vallas (sh andmebaasidega) tehakse, peab olema nende eesmärkide teenistuses, mitte vastupidi. Seega planeedid (andmebaasi osad) tii...


Millist töövahendit saaks kasutada PostgreSQL andmebaasi tabelitest graafilise kujutise (kas HTML, pildifail või midagi taolist) loomiseks? Tööriist võiks olla vabavaraline, joosta Linuxi masinal ning ideaalis olla kasutatav käsurealt (et saaks kasutada ka skriptide sees).

Kui Teil on andmete modelleerimise CASE vahend, siis see võib toetada pöördprojekteerimist (reverse engineering) olemasolevast andmebaasist.Leidub ka eraldi andmebaaside haldusvahendeid, mis sellist funktsionaalsust pakuvad. Tõst...


Kas oleks mõistlik hoida andmebaasis asukoha andmeid aadressi ja riigi kombinatsiooni asemel koordinaatidena? Kui jah, siis mis oleks sobivaim andmetüüp selleks(nii Oracles kui Postgresis)?

Kõik sõltub sellest, millisel otstarbel on plaanis neid andmeid kasutada. Kui tegemist on taustainfoga, mille alusel ei tehta täpseid otsinguid ja mida võibolla trükitakse kirjadele/arvetele, siis piisab veerust aadress. Tõstaksin...


Kas andmete andmebaasi tasemel valideerimine (eelnevalt defineeritud reeglitele vastavuse kontrollimine) on hea mõte või mitte?

Minu arvates on hea mõte. Järgnev tekst üritab seda põhjendada.Väide: Kui rakenduse tasemel andmeid valideeritakse, siis andmebaasi tasemel pole seda enam vaja teha, sest see on liiga keeruline. Vastus: Kõik sõltub selle...


Milliseid andmebaaside kursustes käsitletud teemasid puudutavaid järeldusi saab teha 2017. aasta suvel nurjunuks kuulutatud pensionide ja sotsiaaltoetuste maksmise infosüsteemi uue versiooni SKAIS2 arendusprojekti alusel?

Väga sageli ei tea süsteemi tulevased kasutajad ja selle arenduse eest maksjad (ei pruugi olla üks ja sama isikute ring), milline täpselt peaks uus süsteem olema. Tulemuseks võivad olla lepingud, mida on ebareaalne täita. Sõltub tellija poo...


Kas isiku rollide omamise registreerimise võiks realiseerida nii, et luua loendustüüp rollide nimedega ning kasutajate tabelis luua veerg, mille väärtuseks on seda loendustüüpi väärtuste massiiv?

See on võimalik, aga ma ei soovita. Soovitan rollide jaoks luua eraldi klassifikaatori tabeli ja luua eraldi tabeli rollide omamiste kohta.CREATE TYPE t_roll AS ENUM('juhataja','administraator','tavakasutaja');


Kas PostgreSQLi loendustüüpi võiks kasutada väga harva muutuvate klassifikaatorite (näiteks seisundite liigid) realiseerimiseks?

See on võimalik, aga ma ei soovita. Soovitan nende asemel luua ja kasutada klassifikaatorite tabeleid.CREATE TYPE t_tellimuse_seisundi_liik AS ENUM('loodud','kinnitatud','tühistatud','täidetud');CREATE TABLE...