Andmebaaside ajaveeb

Mõtteid andmebaasidest, andmebaasisüsteemidest ja nende kavandamisest

Kas olemasolevate "päriselu" SQL-andmebaaside disaini kvaliteet on hea?

Selliseid andmebaase on loodud nii palju, et üldistavalt kõigi kohta midagi öelda on võimatu. Saan öelda, et andmebaasides, mida olen ise lähemalt uurinud, mida on uurinud minu juhendatavad üliõpilased või mida on uuritud avaldatud teadustöödes, leid...


Juhul kui välisühendamist ei ole lause õige tulemuse saavutamiseks vaja, siis kas OUTER JOIN operatsiooni kasutamine INNER JOIN asemel mõjutab lause täitmisplaani valikut ja seega ka lause täitmise kiirust?

Sõltub päringust ja andmebaasisüsteemist.Katsetasin Oracles (12.1) ja PostgreSQL (14) põhjal, mis olid samas serverarvutis. Katsetamisel kasutatud andmebaas ja andmed olid ühesugused.Oletame, et andmebaasis on järgnevale konts...


Ma olen informaatika üliõpilane. Ma arvan, et kursuse töö töövihik on suur dokument mida keegi ei kasuta päris elus. Aine projekti tegemine on täielik ajaraisk, sest kogu info mida õppejõud näha tahab tuleb temalt ning kui ise sellest väga õppida ei saa. Milliseid kasulikke teadmisi, lisaks andmebaasidele, see projekt annab?

SIIN on üks pildirida süsteemiarenduse ideaalist vs. tegelikkusest. Nagu näete la...


Millised on MS Accessi eelised teiste SQL-andmebaasisüsteemide ees?

Iga töö jaoks on oma tööriistad. Töövahend pole universaalselt halb ega hea, vaid sellel on sobivad ja mittesobivad kasutusvaldkonnad. Ma pole nõus nendega, kes MS Accessi põlastavad ja selle peale nina kirtsutavad. Prototüüpide, üksikkasutajate andm...


Millised on võimalikud lähenemised andmebaasirakenduste loomisele?

Lähtumine objektidest. Andmebaasirakendus on realiseeritud mõnes objektorienteeritud programmeerimiskeeles. Sõnasta funktsionaalsed nõuded (kasutuslugude või kasutusjuhtudena). Koosta rikkalik valdkonnamudel...


Kas ja miks peab rutiinis või trigeris kasutama SELECT ... FOR UPDATE?

Kas ... FOR UPDATE on vajalik sõltub kõigepealt kasutatavast andmebaasisüsteemist. PostgreSQLis ja Oracles on SELECT ... FOR UPDATE vaja kasutada siis, kui teete trigeri protseduuris või lihtsalt rutiinis mingi tingimuse kontrolliks päringu (SELECT l...


Millised on PostgreSQLi ja Oracle eelised võrreldes üksteisega?

Vastus peegeldab õppejõu isiklikku seisukohta, puudutab eeskätt andmebaaside programmeerimist ning välja toodud nimekirjad pole kaugeltki mitte ammendavad. Punktid ei ole tähtsuse järjekorras - erinevatele inimestele ja erinevates olukordades on täht...


Lõin PostgreSQL andmebaasis protseduuri (CREATE PROCEDURE lause). Seda MS Accessi rakendusest välja kutsudes saan veateateid nagu:
  • Error while preparing parameters.
  • ERROR: ... is a procedure; Error while preparing parameters.

Milles on viga ja mida selle parandamiseks ette võtta?

Protseduurid on PostgreSQLis väga uus asi (lisandusid PostgreSQL 11) ja vanemad draiveri versioonid neid ei toeta. Lahenduseks on asendada serveris protseduurid funktsioonidega või kasutada viimast draiveri versiooni.


Kuidas kutsuda PostgreSQLis välja funktsiooni või protseduuri, mille mõni parameeter on SMALLINT tüüpi?

Oletame, et andmebaasis on loodud funktsioon f_lopeta_teenus, mille parameeter p_teenuse_kood on SMALLINT tüüpi. Üritades seda funktsiooni välja kutsuda lausega: SELECT f_lopeta_teenus(p_teenuse_kood:=436); ...