10.1 Ievads datubāzēs un PostgreSQL

Tavs šīs stundas izaicinājums: Saprast, kāpēc relāciju datubāzes ir labākas par CSV/JSON failiem, instalēt PostgreSQL un izveidot pirmo tabulu.

SR 2.4.17. Darbs ar failiem un ārējām datu krātuvēm SR 2.4.4. Iegūst, atlasa un apstrādā datus

Teorija: Kas ir relāciju datubāze?

Datubāze (DB) ir strukturēta datu kopa, kuru pārvalda datubāzes pārvaldības sistēma (DBVS). PostgreSQL ir bezmaksas, atvērtā koda DBVS, ko izmanto Apple, Reddit, Spotify un tūkstošiem citu lielo uzņēmumu.

Atšķirībā no JSON/CSV, datubāze:

-- Pirmā tabula
CREATE TABLE speletaji (
    id SERIAL PRIMARY KEY,    -- auto-increment unikāls ID
    vards TEXT NOT NULL,
    punkti INTEGER DEFAULT 0
);

1. uzdevums: PostgreSQL instalēšana

Sagatavo darba vidi: instalē PostgreSQL un grafisko klientu pgAdmin.

Izpildes soļi:

  1. Lejupielādē PostgreSQL no postgresql.org/download un instalē (atceries paroli admin lietotājam postgres!).
  2. Instalācijas laikā uzliek pgAdmin atzīmi (grafiskais klients).
  3. Atver pgAdmin un savienojies ar lokālo serveri.
  4. Izveido jaunu datubāzi ar nosaukumu spele (Right click → Create → Database).

2. uzdevums: Pirmā tabula ar SQL

Izveido tabulu spēlētāju datu glabāšanai, izmantojot SQL DDL.

Izpildes soļi:

  1. pgAdmin atvēr Query Tool (lapas ikona ar elektrību).
  2. Ieraksti un izpildi (F5):
    CREATE TABLE speletaji (id SERIAL PRIMARY KEY, vards TEXT NOT NULL, punkti INTEGER DEFAULT 0);
  3. Pārbaudi tabulu — kreisajā kokā: Schemas → public → Tables → speletaji.
  4. Pievieno otru tabulu speles: id, nosaukums, izveidots.
  5. Saglabā SQL skriptu kā schema.sql savā projektā.

3. uzdevums: Datu tipu eksperiments

Izpēti dažādus PostgreSQL datu tipus un to robežas.

Izpildes soļi:

  1. Izveido tabulu tipu_tests ar laukiem: mazs INT, liels BIGINT, cipars NUMERIC(10,2), tagad TIMESTAMP DEFAULT NOW(), aktivs BOOLEAN DEFAULT true.
  2. Iemēģini INSERT INTO tipu_tests (mazs, liels, cipars) VALUES (100, 9999999999, 3.14);
  3. Izpildi SELECT * FROM tipu_tests; un apskati rezultātu.
  4. Mēģini ievadīt nederīgu vērtību (piem., tekstu skaitlim) — pieraksti, kāda kļūda parādās.
  5. Saglabā secinājumus failā datu_tipi.md.

Papildus uzdevums: DB diagramma ar dbdiagram.io

Izmanto vizuālu rīku, lai uzzīmētu projekta datu modeli.

Izpildes soļi:

  1. Atver dbdiagram.io.
  2. Apraksti tabulas speletaji un speles ar to attiecībām.
  3. Eksportē kā PNG attēlu un saglabā GitHub mapē.

Biežākās kļūdas

Koda piemērs

-- Pirmais SQL skripts (schema.sql)
CREATE TABLE IF NOT EXISTS speletaji (
    id SERIAL PRIMARY KEY,
    vards TEXT NOT NULL UNIQUE,
    punkti INTEGER DEFAULT 0,
    izveidots TIMESTAMP DEFAULT NOW()
);

-- Pārbaude, ka tabula izveidota
SELECT table_name FROM information_schema.tables
WHERE table_schema = 'public';
table_name
----------
speletaji
⬅ Tēmas apkopojums Nākamā stunda ➡