You are on page 1of 7

17/03/2021

Fakultet organizacije i informatike, Varaždin

Vježba 1
Prof. dr. sc. Kornelije Rabuzin

Sadržaj 2
01

Retouching

Uvod i literatura Plan rada Opis radne okoline

Relacijski model PostgreSQL Kreiranje i upravljanje


podataka i SQL korisnicima

1
17/03/2021

Uvod i literatura 3

Uvod u baza podataka, SQL, administracija i upravljanje objektima u BP...

Prvi Drugi Kolokvij iz


Seminarski
kolokvij kolokvij vježbi Aktivnost Konačna
rad
(20b) (25b) (25b) (10b) ocjena
(20b)
15b

Teorija Zadaci
(10b) (15b)

Osnovna literatura za vježbe:


Kornelije Rabuzin: Uvod u SQL, Zrinski d.d., FOI Varaždin, 2011.
Kornelije Rabuzin: SQL – napredne teme, Zrinski d.d., FOI Varaždin, 2014.

Plan rada 4

Vježba 1

•Upoznavanje s okolinom, instalacija PostgreSQL-a, kreiranje korisnika i BP

Vježba 2

•Kreiranje tablica, tipovi podataka, integritetna ograničenja

Vježba 3
CASE alat s intuitivnim grafičkim sučeljem
•Unos, ažuriranje i brisanje podataka, sekvence, indeksi
za konceptualno modeliranje BP.
Vježba 4
Mogućnosti: vizualno kreiranje i pregled
•Jednostavni upiti, GROUP BY, ORDER BY, LIMIT
strukture BP (tablice, veze, pogledi,
Vježba 5
okidači...), generiranje i izmjena BP na
•Složeni upiti, ugnježđeni upiti, JOIN
serveru, reverzno inženjerstvo....
Vježba 6
Namijenjen za PostgreSQL DBMS
•Skupovni upiti, pogledi, transakcije

Vježba 7

•SELECT INTO, funkcije

Vježba 8

•Probni zadatak

2
17/03/2021

SQL 8

(Structured Query Language)

Standardizirani upitni jezik za relacijske baze podataka

Unos, manipulacija i dohvaćanje podataka iz BP

Istražite koje verzije SQL standarda postoje, kako ti dokumenti izgledaju, te


koja je zadnja dostupna verzija

Komponente:
1. Data definition language (DDL) – CREATE, ALTER, DROP, RENAME
2. Data manipulation language (DML) – INSERT, UPDATE, DELETE
3. Query language (QL) – SELECT
4. Data control language (DCL) – GRANT, REVOKE
5. Transaction control language (TCL) – COMMIT, ROLLBACK, SAVE POINT

PostgreSQL 9

Objektno-relacijski sustav za upravljanje bazom podataka (SUBP) nastao na temelju


POSTGRES sustava razvijenog 1987.g. na Berkeleyju

Dobra usklađenost sa SQL standardom i podosta naprednih mogućnosti

PostgreSQL 13 – najnovija verzija

Dostupan na različitim platformama (Windows, Linux, Mac OS)

http://db-engines.com/en/ranking_trend

3
17/03/2021

PostgreSQL 6

www.postgresql.org

Pogledajte video materijal – „SQL 0 Instalacija PostgreSQL”

Nakon instalacije sustava PostgreSQL pokrenite „SQL Shell (psql)”:

psql 6

Upišite podatke koji se traže (napisani su u uglatim zagradama).

kod instalacije sustava ste kreirali lozinku koju morate upisati u Password:

4
17/03/2021

PostgreSQL 6

psql - interaktivni terminal (sučelje) za rad s PostgreSQL bazama podataka

Izravno pisanje i izvršavanje SQL upita

Svaka naredba mora završiti s „;” simbolom !

Naredba Značenje

\h Popis svih SQL naredbi čiju je sintaksu moguće


saznati
\h <SQL_naredba> Sintaksa zadane SQL naredbe

\q Izlazak iz psql terminala

\d Lista svih stupaca, domena i ograničenja za svaku


relaciju (tablicu, pogled, indeks, sekvencu...)
\dt
Lista svih tablica u BP
\di
Lista svih indeksa u BP
\du
Lista svih uloga u BP
\dv
Lista svih pogleda u BP

\l Lista svih baza podataka

Kreiranje baze podataka 12

CREATE DATABASE name


[ [ WITH ] [ OWNER [=] user_name ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ LOCALE [=] locale ]
[ LC_COLLATE [=] lc_collate ]
[ LC_CTYPE [=] lc_ctype ]
[ TABLESPACE [=] tablespace_name ]
[ ALLOW_CONNECTIONS [=] allowconn ]
[ CONNECTION LIMIT [=] connlimit ]
[ IS_TEMPLATE [=] istemplate ] ]

Bazu podataka može kreirati samo super user ili korisnik s posebnom CREATEDB
ovlasti !!

Popis svih baza podataka: SHOW DATABASES; \l (psql)

Odabir baze podataka: USE <naziv_bp>; \c <naziv_bp> (psql)

Brisanje baze podataka: DROP DATABASE <naziv_bp>;

Pogledajte materijal „SQL 3 – Kreiranje baze i korisnika” te izvršite samostalno


sve naredbe!

5
17/03/2021

Kreiranje i upravljanje korisnicima 10

Koncept uloga (eng. role) za kontrolu prava pristupa BP


korisnik ili grupa korisnika BP

Uloga je „vlasnik” objekata u BP (tablice, pogledi i sl.) i može dodjeljivati ovlasti za


pristup tim objektima drugim ulogama

Uloga u BP ≠ korisnik OS-a !!


CREATE ROLE <naziv_uloge>;
Kreiranje uloge, korisnika:
CREATE USER ivo WITH PASSWORD ‘IV0345;';
Brisanje uloge: DROP ROLE <naziv_uloge>;

Dohvaćanje svih uloga: SELECT rolname FROM pg_roles;

Promjena trenutne uloge: SET ROLE <naziv_uloge>;

Provjera trenutne uloge: SELECT CURRENT_USER;

Atributi uloga (eng. role attributes) određuju ovlasti (privilegije) te uloge


login, status superuser-a, kreiranje BP, kreiranje uloga, lozinka...

Promjena atributa uloge: ALTER ROLE <naziv_uloge> [[WITH] opcija[...]];

Primjeri 11

1 2 3
CREATE ROLE CREATE ROLE
CREATE ROLE bp1_admin
bp1_studenti bp1_student_1 PASSWORD
LOGIN SUPERUSER;
CREATEROLE; ‘student1’ CREATEDB;

4 5
GRANT bp1_studenti TO REVOKE bp1_studenti
bp1_student_1; FROM bp1_student_1;

Hoće li se bp1_student_1 moći spojiti na svoju


bazu podataka (uz pretpostavku da ona postoji)?

6
17/03/2021

14

Zadatak Pročitati prvo poglavlje u knjizi „Uvod u SQL”

Pokušajte samostalno izvršiti sve naredbe iz video


materijala prezentiranih na Predavanju 3

You might also like