Andmebaaside ajaveeb

Mõtteid andmebaasidest, andmebaasisüsteemidest ja nende kavandamisest

Mis vahe on identifitseerival ja mitteidentifitseerival seosel tabelite vahel?

Identifitseeriv seos tähendab, et vanemtabeli reas olev võtmeväärtus aitab identifitseerida lapstabelis olevat rida. Seetõttu on vanemtabeli võti, mis on lapstabelis välisvõtmeks, osaks lapstabeli võtmest. Teiste sõnadega, lapsel pole oma identi...


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


Igal isikul on null või rohkem meiliaadressi. Võib juhtuda, et mitu isikut jagavad ühte ja sama meiliaadressi. Kas selliste andmete hoidmiseks peaks tegema kokku kolm tabelit: meiliaadresside tabeli, isikute tabeli ja meiliaadresside ja isikute vahelist M:N seost esitava vahetabeli?

Ma arvan, et ei peaks.Kui andmebaasis oleksid tabelid:Isik (isik_id, ...)Primaarvõti (isik_id)E_meil (e_meil_id, e_meil)Primaarvõti (e_meil_id)Alternatiivvõti (e_meil)Isiku_meiliaadres...


Kui tabelis Riik on (nimetus) alternatiivvõti, siis miks ei piisa selle jõustamiseks UNIQUE kitsendusest? Miks on vaja veerule nimetus ka NOT NULL kitsendust?

Hästi kavandatud tabelis peaks olema üks või rohkem kandidaatvõtit. Kandidaatvõtme väärtus + kandidaatvõtme veergude nimed + tabeli nimi on loogiline aadress, mille järgi andmebaasist tabeli rida üles leida. Kui aadressi pole või see on väärtuste puu...


Miks ei ole hea mõte kasutada kõikides tabelites surrogaatvõtit?

Surrogaatvõti on lihtvõti, mille väärtused on süsteemi genereeritud unikaalsed täisarvud. Need väärtused on kasutusel tarkvara siseselt ridade identifitseerimiseks, kuid andmebaasi kasutavatele inimestele ei tähenda need väärtused mi...


Mida kujundab endast elementaarvõtme normaalkuju (EVNK)?

Kui ma vaatan C.J Date ja J. Celko töid, siis nad mainivad seda normaalkuju lühidalt, ajaloolise tagasivaate ja esitluse täielikkuse huvides. C.J. Date osundab, et EVNK-le viidatakse kirjanduses vähe.EVNK on kolmanda normaalkuju (3N...


Millised on erinevad tabelite võtmete tüübid ja kuidas need on omavahel seotud?

Supervõtmel peab olema: - unikaalsuse omadus.   Kandidaatvõtmel peab olema: - unikaalsuse omadus JA - mitteliiasuse omadus. Mitteliiasus tähendab, et sealt ei saa enam ühtegi veer...