Kuidas muuta PostgreSQLis veeru andmetüüpi? Oletame, et meil on andmebaas kontseptuaalse struktuuriga:[Auto_seisundi_liik]-1-------------0..*-[Auto]Tabelis Auto ja Auto_seisundi_liik on veerg auto_seisundi_liik_kood tüüpi INTEGER, kuid peaks o... PostgreSQLALTER TABLEandmetüübidsõltuvusedrefaktoreeriminevaatedgexec 28.11.2024 11:50 | Erki Eessaar
Kas CHECK kitsendustes saab kasutada mittedeterministlikke funktsioone? Deterministlik funktsioon tagastab samade argumentidega (sisendandmetega) alati samasuguse väärtuse. Mittedeterministlik funktsioon võib tagastada samade argumentidega erinevatel ajahetkedel erineva tulemuse. Mittedeterministlikud funktsioonid on nä... CHECK kitsendusdeterministlik funktsioonCURRENT_DATESQL standardandmete terviklikkusandmebaasisüsteemidretrospektiivne 22.11.2024 14:57 | Erki Eessaar
Kuidas kustutada korraga mitu tabeliga seotud kitsendust? See on hea näide, kuidas SQLi dialekt e mägimurrak erineb erinevates andmebaasisüsteemides detailide poolest. Järgnev katsetus tehti keskkondades DB Fi... kitsenduste kustutamineALTER TABLESQL süntaksDDLandmebaasisüsteemidporditavusDROP CONSTRAINT 14.11.2024 11:52 | Erki Eessaar
Milliseid soovitusi annavad teadusuuringut selles osas, kuidas suurte keelemudelite abil SQL koodi genereerida? Chang ja Lussier (2023) katsetavad erinevaid võimalusi ja annavad soovitusi suurte keelemudelite promptimiseks ... OpenAIChatGPTLLMsuur keelemudeltehisintellektAITIpromptviipSQL genereerimine 01.11.2024 12:17 | Erki Eessaar
Kas ja millised probleemid võivad tekkida andmebaasirakenduse tegemisel kasutades mõnda ORM (Object-Relational Mappers, objekt-relatsioonvastenduse) vahendit? SIIN (Sulaoja, K.M., Saarep, A. Cognate kasutajamugavuse parandamine ja arendustöö lihtsustamine) on 2024. aasta bakal... rutiinfunktsioonprotseduurhetktõmmismaterialiseeritud vaadevirtuaalne andmete kihtandmebaasi avalik liidesORMDjangojõudlus 02.10.2024 13:01 | Erki Eessaar
Kas see on tavapärane praktika koostada registrite vaheliste seoste puhul nn vahetabelid, ning kas on juhte, kus see pole vajalik? Kui kontseptuaalses andmemudelis on mitu-mitmele seosetüüp, nagu näiteks: [Protseduur]-0..*---------------0..*-[Protseduuri_kategooria] , siis selle realiseerimiseks tekib SQL-andmebaasis vahet... kontseptuaalne andmemudelerdolemi-suhte diagrammregistridallsüsteemidmodelleeriminevahetabelM:N seosseos 13.06.2024 17:02 | Erki Eessaar
Mis vahe on identifitseerival ja mitteidentifitseerival seosel tabelite vahel? Identifitseeriv seos tähendab, et lapsolemi identiteet sõltub täielikult vanemast. Kui vanemat pole, ei saa laps üldse eksisteerida, sest see on oma olemuselt vanema "osa". Näiteks tellimuse rida pole mõeldav ilma konkreetse tellimuseta, ... identifitseeriv seosmitteidentifitseeriv seosvälisvõtieksistentsiaalne sõltuvusnõrk olemitüüpON DELETE CASCADEandmebaasi disain 15.04.2024 17:12 | Erki Eessaar
Kas tühja stringi esinemise keelamine ja NOT NULL kitsendus on üks ja sama asi? Ei ole! Tühi string on väärtus (kuigi väga lühike).NULL on tähis, et väärtust ei ole.NOT NULL veergu saab seega tühja stringi panna, sest see täidab tingimuse, et väljas peab väärtus olema.Kui näiteks s... tühi stringNULLNOT NULLCHECK kitsendusOracle erinevusedandmekvaliteetpuuduvad väärtused 03.03.2024 12:21 | Erki Eessaar
Kuidas jõustada PostgreSQL andmebaasis kitsendus, et tabeli veerus hoitakse rahasummat eurodes? Kitsendust eurode kohta ei saa ega pea andmebaasi lisama! Oletame, et andmebaasis on tabel:Amet (amet_kood, nimetus, min_palk)Primaarvõti (amet_kood)Alternatiivvõti(nimetus)Veerus min_palk on ametikohal ma... eurovaluutakitsendusconstraintkonkatenatsioonPostgreSQLandmetüübidDECIMALto_charformaatimine 11.02.2024 11:19 | Erki Eessaar
Kas SQL-andmebaasis saab jõustada deklaratiivsete kitsendustena assotisatsioonireegleid? Jah saab. Vaatame konkreetset näidet. Oletame, et SQL-andmebaasis on tabel Kaup:Kaup(kauba_kood, hind, on_aktiivne)Primaarvõti(kauba_kood)Oletame, et kehtib reegel: Kui kaup on aktiivne, siis selle h... assotsiatsioonireegelimplikatsioontingimuslauseCHECK kitsendusloogikakitsendusandmebaasi disainreeglid 10.02.2024 10:37 | Erki Eessaar