Ühetabelilise andmebaasi loomine PostgreSQLis

 

Alusta andmebaasihaldustarkvara PostgreSQL installimisest.

PostgreSQL installimisjuhend.

Kui arvutisse on server loodud, saab serverisse luua andmebaasi.

Tee paremklõps serveri nimetusel, see peaks meil olema PostgreSQL  Create Database

Pane andmebaasile nimeks Test, muud parameetrid jäta nii nagu on.

looab

Andmebaas ilmub vasakul sirvimise puus serveri all:

sirvimispuu

 

 

Uue andmebaasi loomisega luuakse alati public schema. Skeem koondab kõik selle andmebaasi objektid, sh tabelid ühte gruppi ja aitab neid loogilisemalt hallata. Ükskõik millise andmebaasi objekti loome, kui me täpsemalt ei määratle, pannakse loodud tabelid alati jaotusesse public schema alla.

tabelpuus

 

 

Tabeli lisamiseks tee paremklõps sõnal „Tables“. Tables ® Create ® Table

Pane tabelile nimeks „Isik“. Tabelite nimed võiksid olla suure tähega, võimalikult lühidad ja lihtsad, sest päringute tegemisel on vaja täpseid nimesid kasutada. Kui tabeli nimi siiski peaks koosnema kahest sõnast, lisa sõnade vahele alumine kriips, nt „Isik_esialgne“.

Ära veel salvesta, liigu sakke mööda edasi, sakil Columns saad lisada kõigi veergude (tunnuste) nimetused ja andmetüübid. Lisa välju plussmärgist. Igal tabelil peab olema tunnus või tunnused, mis tagaks, et iga rida on unikaalne. Kui unikaalseid andmevälju ei ole (nt nimed, ka perenime ja eesnime kombinatsioon võivad korduda), on otstarbekas teha eraldi tunnus „id“. PostgreSQL, nagu kõik teisedki andmebaasihaldustarkvarad lubavad lasta tarkvaral seda välja automaatselt täita. Andmetüübiks peab PostgreSQLis panema selleks „serial“. Postgres pakub ka variante „bigserial“ ja „smallserial“, need eristuvad andmebaasis andmevälja jaoks reserveeritavate bittide arvu poolest. Kui on teada, et andmebaasis saab olema palju andmeid ja id võb kasvada ka 11 kohaliseks, siis tuleks kasutada „bigserial“. Meil on küll väike näidisandmebaas, aga valime ikkagi „serial“

andmetüübid

 

Not NULL tuleks panna „Yes“ juhul kui väli ei tohi jääda tühjaks. Primary key kitsenduse (constraint) seamegi sellele ühele väljale, mille järgi tahame ridu/kirjeid hiljem üksteisest eristada.

Lisa ka kõik teised tunnused, et tekkiks sellised andmebaasi väljad:

AB väljad

 

 

 

 

Andmetüüpide selgituseks: character varying (mõnes andmebaasisüsteemis ka varchar) tähistab erineva pikkusega tekstivälja, välja tähemärkide arvu peame ise lahtris length/precision täpsustama, pere- ja eesnime puhul võiks see olla 50 või 100.

Char tähistab ühe tähemärgi pikkust välja. See sobib  sellisel juhul kui tahame sellele väljale märkida kas „m“ või „n“ või jätta selle välja mõne kirje puhul tühjaks (näiteks ei saa allikast aru, kummaga on tegu).

Andmetüüp real sobib siis kui sellele väljale on vaja sisestada komakohtadega numbreid, allikates võib olla vanus märgitud sageli ka kujul 34.5, selleks et seda saaks andmebaasi märkida, tuleb andmetüübiks määrata komaarv. Kui andmetüübiks märkida integer (täisarv), siis ei saaks sellele väljale enam komaga vanuseid sisestada.  

Välja kirje_lisamisaeg saab samuti automatiseerida, st et andmete sisestamisel võib selle välja tühjaks jätta ja muude väljade täitmisel lisatakse see andmebaasi automaatselt. Selleks märgi kõigepealt selle välja andmetüübiks timestamp with time zone. Seejärel klõpsa välja nime ees oleval pliiatsi ikoonil.

 

Pliiatsi ikoonil

Avanenud vaates vali „Constraints“ ehk piirangud ja kirjuta väljale „Default“ „now()“

constraints

 

Seejärel salvesta. Kui tahad midagi muuta veel siis vasakul sirvimispuus paremklõps tabelil Isik ja Properties annab sama vaate tagasi.

Või kui soovid muuta konkreetse välja andmetüüpi või välja nimetust, siis paremklõps selle välja nimetusel avab aknakese, kust tuleks valida Properties.

 

TabelikeProperties

 

 

 

 

 

 

 

 

 

Nüüd sisesta tabelisse andmed. Siseta täpselt need kuus rida, mida näed, siis tulevad pärast päringute tegemisel samad tulemused kui näidetes, see pole tähtis kas perenime ja eesnime lahtrites on lubatud 50 või 100 tähemärki või milline on veergude järjestus:

 

Andmed

 

Andmete sisestamiseks liigu sirvimise puus tabeli nimetusele (Isik) ja vali ülevalt menüüribalt View (ruudustik). Tabelisse andmete lisamisel klõpsa vastaval lahtril ja siseta sinna info, ära täida välju id ja kirje_lisamisaeg, need täidetakse automaatselt pärast teiste andmete sisestamist ja salvestamist.

 

Salvesta

 

 

Lõpus klõpsa „Salvesta“. Salvestamisnupp asub päringuakna kohal. Salvestada saab ka klahviga F6.

Salvesta