Millised kompenseerivad tegevused tuleks määrata üldistusseose alusel tekkivale välisvõtme kitsendusele? Näide: Oletame, et kontseptuaalses andmemudelis on ülatüüp Isik ja selle alamtüüp on Töötaja. Nende alusel luuakse andmebaasis tabelid Isik ja Tootaja. Tabelis Isik on surrogaatvõti (isik_id), ... välisvõtikompenseeriv tegevussurrogaatvõtinaturaalne võtiüldistusseos 14.06.2026 12:15:15 | 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
Kuidas teha nii, et Enterprise Architect vahendis oleks lihtsam minna üle MS Accessi jaoks tehtud tabelite disainilt PostgreSQL jaoks tehtud tabelite disainile? Juhis Enterprise Architect 12 seadistamiseks (MS Accessi andmetüüpide vastavus). 1. Valige menüüst Project => Settings => Database Datatypes. 2. Valige väljal Product Name: MS Access.... CASEEAEnterprise ArchitectPostgreSQLMS Access 21.01.2026 20:02:29 | 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
Kus saaks harjutada SQLi reaalsete andmete põhjal? Seda saab näiteks teha keskkonnas StackExchange Data Explorer. See on avatud veebipõhine tööriist, mis võimaldab igaühel uurida ja analüüsida Stack Exchange'i ... StackExchangeStack OverflowSQLTransact-SQLTIAItehisintellekt 27.11.2025 18:28:45 | 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
Millal kasutada andmebaasis EAV disaini või JSONB tüüpi veergu? Analüüsime konkreetset näidet.Kontekst: Tegemist on PostgreSQL andmebaasiga, kus muuhulgas hakatakse hoidma andmeid keelemudelite kohta. See andmebaas on osa süsteemist, mis võimaldab teha andmebaaside suhtes eestikeelse... universaalne disainEAVJSONJSONBPostgreSQLandmebaasi disainEAVJSONBPostgreSQLpaindlikkusjõudlus 17.11.2025 11:28:32 | Erki Eessaar
Kuidas tagada andmebaasioperatsiooni realiseerivas rutiinis, et operatsiooni järeltingimused saavutatakse vaid siis, kui kõik eeltingimused on täidetud? Lepingprojekteerimise (design by contract) kohaselt kirjeldatakse tarkvaraelement kasutades eeltingimusi, järeltingimus... lepingprojekteerimineeeltingimusedjäreltingimusedinvariandidtrigeridkitsendusedrutiinid 21.12.2024 19:25:12 | Erki Eessaar