Milliseid täiendusi SQL standardisse tegi SQL:2023 ja millised nendest võimalustest on ka PostgreSQL'is (kuni versioonini 16) olemas? 2023. aastal tuli peale pikka ootamist välja SQL standardi uus versioon - SQL:2023. Eelmine versioon oli SQL:2016 - nimes on viide aastale. SQL:2023PostgreSQL 16SQL standardJSONANY_VALUEliteraaliduued võimalused 22.09.2023 12:50 | Erki Eessaar
Miks mitte kasutada klassifikaatori tabeli, välisvõtme veeru ja sellel oleva välisvõtme kitsenduse asemel loendustüüpi veergu? Sest see: vähendab lahenduse porditavust e ülekantavust, vähendab lahenduse paindlikkust, suurendab keerukust, suurendab PostgreSQL näitel salvestusruumi kasutamist. Kirjutan järgnevalt se... klassifikaatorloendustüüpenumeration typeenumerationreference dataPostgreSQLloendustüüpklassifikaatoridandmebaasi disainporditavus 13.06.2023 19:53 | Erki Eessaar
Kas oskate soovitada kirjandust, kust saaks näiteid ja infot kuidas PostgreSQLis objekt-relatsioonilisest tulenevaid võimalusi ära kasutada ning sellega kaasnevaid plusse ja miinuseid (lisaks kasvavale keerukusele)? PostgreSQL on objekt-relatsiooniline andmebaasisüsteem. Kirjutan objekt-relatsioonilisusest SIIN. Muuhulgas on seal ... objekt-relatsioonilinemassiivarrayenumeration typeoperaatorpäriminePostgreSQLobjekt-relatsioonilinepäriminetüübidmassiivid 22.03.2023 20:13 | Erki Eessaar
Miks on halb mõte kasutada erinevates tabelites ühesuguse nimega (id, kood või code) primaarvõtme veergu? See muudab keerulisemaks tabelites olevatest andmetest arusaamise ja tabelite põhjal päringute tegemise.Sellise nimega primaarvõtme veerud on üks sümptom, mis viitab sellele, et andmebaasi disainis esineb primaarvõtiveergude nimetamineSQL antimustridandmebaasi disainloetavustabelite ühendamineSQL päringud 16.02.2023 15:43 | Erki Eessaar
Kas PostgreSQLis peaks vaate alampäringus kasutama SELECT ... FOR UPDATE? Ei! Tõsi on see, et PostgreSQLis saab erinevalt Oraclest (12.1) vaate alampäringus kasutada SELECT ... FOR UPDATE. lukustaminevaadePostgreSQLeksklusiivne lukktrigertrigeridalampäringPostgreSQLvaatedlukustamineSELECT FOR UPDATEtransaktsioonid 12.12.2022 10:37 | Erki Eessaar
Kas Oracles saab defineerida vaadetele kitsendusi? Jah saab. Esiteks saab vaadetele lisada WITH CHECK OPTION (andmemuudatus vaate kaudu peab rahuldama vaate alampäringu tingimusi) ja WITH READ ONLY (vaade on ainult lugemiseks, st kirjutuskaitsega) kitsendused. Neid kitsendusi jõustatakse ... OraclevaadekitsendusOraclevaadekitsendusedWITH CHECK OPTIONWITH READ ONLY 27.11.2022 17:35 | Erki Eessaar
Loon PostgreSQLis uue andmebaasi, kuid selles on kellegi teise loodud tabelid, domeenid või muud andmebaasiobjektid? Miks see nii on ja mida teha? PostgreSQLis luuakse uus andmebaas tehes koopia mallandmebaasist (template1). Üli... template1skriptandmebaasiobjektide kustutaminePostgreSQLandmebaasi loominetemplate1skeemidpuhastamine 10.11.2022 20:19 | Erki Eessaar
Kui muuta PostgreSQL tabeli FILLFACTOR omaduse väärtust, siis kuidas see mõjutab olemasolevaid tabeli plokke? FILLFACTOR parameetri väärtus määrab kui palju jäetakse tabeli plokkidesse vaba ruumi,... PostgreSQLFILLFACTORjõudlusoptimeerimineVACUUM FULLsalvestusruumUPDATE lause 01.11.2022 18:52 | Erki Eessaar
Kuidas saab PostgreSQLis ühe lausega lisada tabelisse puuduvad read ja uuendada olemasolevaid ridu? Sellist operatsiooni tuntakse ka nime all upsert (kombinatsioon INSERT ja UPDATE operatsiooniks).Selle realiseerimiseks saab PostgreSQLis kasutada INSERT ... ON CONFLICT lauset. Alates PostgreSQL 15 saab selleks kasutada ka upsertmergePostgreSQLUPSERTMERGEandmemuudatusedkonfliktide lahendamine 24.10.2022 00:06 | Erki Eessaar
Kas NoSQL andmebaasisüsteemides ja uue põlvkonna SQL-andmebaasisüsteemides (NewSQL süsteemid) saab luua vaateid, hetktõmmiseid ja rutiine? Vaadetest, hetktõmmistest ja rutiinidest saab moodustada andmebaasi avaliku liidese (virtuaalse andmete kihi), läbi mille kasutada andmebaasi. Andmebaasiserveris talletatud rutiinide kasutamisele tuuakse nii andmebaasi avalik liidesvirtuaalne andmete kihtNoSQLvaadehetktõmmisvirtuaalne tabelmaterialiseeritud tabelfunktsioonprotseduurrutiinNewSQL 03.10.2022 20:31 | Erki Eessaar