Kas kino infosüsteemis kontseptuaalses andmemudelis on istekohaga seotud 0..* või 0..1 piletit? Kontseptuaalse struktuuri fragment:[Istekoht]-1----------0..*-[Pilet]-0..*-------1-[Seanss] Peame siinkohal eristama füüsilist istekohta saalis ja sellele istekohale aja jooksul müüdavaid pileteid. Kuna üks ja seesama is... kontseptuaalne andmemudelvõimsustikunikaalsuse kitsendus 14.06.2026 12:53:25 | Erki Eessaar
Miks on nii, et kontseptuaalses andmemudelis kasutatakse enamasti seosetüüpidel võimustikku 0..*, mitte 1..*? Näide: Oletame, et kontseptuaalses andmemudelis modelleeritakse hooneid ja nendes olevaid ruume. Kontseptuaalse andmemudeli kohaselt on igas hoones null või rohkem ruumi. Miks nii? Reaalset hoonet on tõepoolest raske ett... kontseptuaalne andmemudelseosetüüpvõimsustik 14.06.2026 12:23:33 | Erki Eessaar
Mida kujutavad endast aegridade andmebaasisüsteemid? Maailmas tehakse aina enam mõõtmisi ja tekib finantsandmeid ning nende tulemusi salvestatakse aegridadena (time-series). Viimastel aastatel on turule tulnud hulgaliselt aegreadtime-seriesaegridade andmebaasisüsteemidPostgreSQLSaaty meetod 21.03.2026 20:07:19 | Erki Eessaar
Kuidas lisada suure ridade arvuga tabelisse kiiresti kohustuslik BOOLEAN tüüpi veerg, mille vaikimisi väärtus on FALSE? Probleemi tuum seisneb selles, et vanemates andmebaasimootorites nõuab uue veeru lisamine koos vaikeväärtusega (DEFAULT FALSE) kogu tabeli füüsilist ümberkirjutamist (kõik read tuleb kettalt lugeda, uus väärtus lisada ja tagasi kirjutada). Selle... PostgreSQLALTER TABLEveeru lisaminepsql 15.03.2026 13:52:28 | Erki Eessaar
Mida tähendab MS Accessi tabeli kujunduse vaates või tabelite seoste vaates see, et mitme veeru ees on võtmekese märk? Need veerud kuuluvad primaarvõtmesse. Seal ei ole tegelikult midagi MS Accessi-spetsiifilist. Igas SQL-tabelis on null või üks primaarvõti. Kui MS Accessi tabeli kujunduse vaates või tabelite seoste vaates (või UML-is loo... primaarvõtiesmasvõtiliitvõtiMS Access 23.02.2026 09:57:18 | Erki Eessaar
Millal mitte kirjutada ja millal kirjutada tabelite ühendamise tingimusi ja täiendavaid piiranguid ridadele FROM klauslisse? Vaatame näidet. Kontseptuaalne mudel [Facility]-1---------0..*-[Health_care_visit] Facility – Tervishoiuasutus Health_care_visit – Visiit arsti juurde ühendamineJOINotsingutingimusSQLPostgreSQL 21.02.2026 09:44:45 | Erki Eessaar
Mis vahe on GENERATED ALWAYS AS IDENTIY ja GENERATED BY DEFAULT AS IDENTITY ja kumba nendest kasutada? Neid kasutatakse surrogaatvõtmete realiseerimiseks. Need võimaldavad tabeli veeru korral määrata, et tegemist on identiteedi veeruga. Selle määramise tulemusel loob andmebaasisüsteem automaatselt sisemise arvujada generaatori ja seob veeruga. Kui kas... PostgreSQLidentiteedi veergsurrogaatvõtiarvujada generaatorserial 26.12.2025 14:16:10 | Erki Eessaar
Kuidas vältida konkurentsiprobleeme teise tabeli andmete kontrollimisel? Kui andmebaasioperatsiooni lepingus on näiteks kirjas eeltingimus, et uus kauba seisund peab olema aktiivne, siis selle eeltingimuse täidetust saab kontrollida operatsiooni käigus. Eelistada tuleks EXISTS alampäringut, kus on määratud FO... PostgreSQLOraclelukustaminejagatud lukkeksklusiivne lukkFOR UPDATEFOR SHAREpgbench 09.12.2025 19:24:00 | Erki Eessaar
Kumb on parem - kas trigeri käivitamise piiramine WHEN klausli abil või IF lausete kasutamine trigeri funktsioonis? Kõigepealt käsitlen jõudluse aspekti. PostgreSQL 18 (ja ka varasemate versioonide) puhul on teooria selline: WHEN klausel: Kontroll toimub enne trigeri protseduuri (funktsiooni) väljakutsumist. Kui tingimus on v... PostgreSQLtrigerWHEN klauselIF lausePL/pgSQLpgbenchjõudlushallatavusGemini 01.12.2025 14:44:40 | Erki Eessaar
Kui kontseptuaalses andmemudelis on üldistusseosed, siis kas neid võiks PostgreSQL andmebaasis realiseerida kasutades tabelite pärimist? See pole soovitav pärimise kaudu tabelite loomise tehniliste piirangute tõttu. Vaatame näidet. Iga isik on mingis täpselt ühes seisundis. Isik võib olla klient või töötaja. Võib olla isikuid, kes on nii klient kui ... PostgreSQLINHERITSpärimineüldistusseosedobjekt-relatsiooniline 22.11.2025 17:25:56 | Erki Eessaar