Andmebaaside ajaveeb

Mõtteid andmebaasidest, andmebaasisüsteemidest ja nende kavandamisest

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...


Kuidas kasutada PostgreSQLi küsitlustulemuste analüüsimiseks sh vabatekstiliste vastuste analüüsimiseks?

Moraal on selles, et vaba teksti väljas olevate väärtuste analüüsimine nõuab rohkem tööd ning kui andmebaasis oleks vaja registreerida andmeid millegi kohta, et nende andmete alusel saaks hiljem teha otsinguid, siis vabateksti asemel tuleks eelistada...


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...


Kas on mingit vahet selles osas, kui otsingutingimusse kirjutada IS TRUE või =TRUE?

Tegelikult ei ole. Teen väikese katsetuse PostgreSQLis (ver 16).CREATE TABLE Bool_test (bool_test_id SERIAL,flag BOOLEAN NOT NULL,CONSTRAINT pk_bool_test PRIMARY KEY (bool_tes...


Lõin andmebaasis tabeli, kus võtmeveeru puhul oleks tulnud selle väärtused süsteemil genereerida, kuid unustasin seda määrata. Lisasin tabelisse juba ridu. Kuidas see omadus tabelile tagantjärgi lisada?

Toon näite.CREATE TABLE Kasutaja_rolli_omamine (kasutaja_rolli_omamine_id INTEGER NOT NULL,kasutaja_id INTEGER NOT NULL,rolli_kood SMALLINT NOT NULL,alguse_aeg TIMESTAMP(0) NO...


Kuidas registreerida PostgreSQLi andmebaasis hetke kuupäev+kellaaeg ilma ajavööndi infota ja ilma sekundi murdosadeta?

CREATE TABLE Ajatempel(tempel1 TIMESTAMP(0) NOT NULL DEFAULT LOCALTIMESTAMP,tempel2 TIMESTAMP NOT NULL DEFAULT LOCALTIMESTAMP(0));INSERT INTO Ajatempel(tempel1, tempe...


Kuidas teha nii, et Enterprise Architect vahendis ei genereeritaks PostgreSQL andmebaasi disaini mudeli põhjal koodi, mida peab käsitsi parandama?

Tuleb muuta malle (template), mille põhjal koodi genereeritakse. Malle tuleb muuta eraldi iga faili puhul, milles olevast mudelist soovitakse koodi genereerida.Järgnevad probleemid esinevad EA12-ga vaikimisi kaasa tulevates mallides...


Kuidas kiirendada PostgreSQLis päringuid, kus päringu tingimuses kontrollitakse stringi vastavust mustrile (nt leia isikud, kelle perenimi algab M tähega)?

Looge tekstilisele veerule indeks ja kasutage selle puhul operaatori klassi, mis pole vaikimisi klass. TEXT tüüpi veeru korral kas...


Millal võiks olla kasu baastabeli arvutatud veergudest?

Arvutatud veeru puhul arvutatakse väljas olev väärtus teiste samas reas olevate väärtuste puhul ja salvestatakse kettale.


Mul on sellised ja sellised tabelid ning ma pean nende põhjal lahendama sellise ja sellise andmete otsimise ülesande. Milline oleks selle ülesande kõige parema jõudlusega lahendus?

Tuleb korraldada eksperiment ja erinevaid lahendusi katsetada. Kui Teil pole käepärast serverit, kus saate "liivakastis" mängida, siis isegi keskkonnas nagu DB Fiddle