1. Pokrenuli smo XAMPP portable verziju:

  • XAMPP_Control:
  • Start za Apache i MySQL ,
  • deo SQL za rad sa SQL-om, i
  • posle svakog SQL dela: GO (u donjem desnom delu)

2. Kreirali smo jednu bazu (odeljenje) i za korišćenje koristimo: "USE odeljenje;"

   CREATE DATABASE odeljenje;
USE odeljenje;

3. Kreirali smo dve tabele u bazi  i u njih ubacili po 2 reda

    Tabela br.1: Ucenici - ima 4 kolone, od kojih je poslednja primarni ključ.

   USE odeljenje;

CREATE TABLE Ucenici (
ime VARCHAR (20),
prezime VARCHAR (30),
JMBG CHAR(13),
ID INT(5) PRIMARY KEY AUTO_INCREMENT);

INSERT INTO Ucenici VALUES
('Petar', 'Pterović', '1231231231231', 1),
('Ana', 'Karenjina', '3213213213213', 2);

   Tabela br.2: Ucenici2 - ima 6 kolona i za svaku je postavljeno neko ograničenje

   CREATE TABLE IF NOT EXISTS Ucenici2 (
redni_broj INT NOT NULL AUTO_INCREMENT,
ime VARCHAR(25) NOT NULL,
prezime VARCHAR(25) NOT NULL,
adresa VARCHAR(50) NULL,
EMAIL VARCHAR(50) NULL,
PRIMARY KEY (redni_broj)
);

INSERT INTO Ucenici2(redni_broj, ime, prezime) VALUES
(1, 'Pera', 'Marić'), (2, 'Sima', 'Simić');

Ovime su kreirane dve tabele. Prva je ista kao tabela kreirana na času prethodne nedelje. Druga je slična, sa tom razlikon da smo upotrebili ograničenja NULL, NOT NULL.

Da se podsetimo: Ako je posle nekog dela tabele navedeno NULL, onda se u taj deo ne moraju upisati podaci prilikom unosa. Ako je navedeno NOT NULL, tu se mora uneti podatak - javiće grešku ako to ne učinimo.

Iz primera se vidi, da priliko unosa podataka nismo uneli adrese niti email za pojedine učenike (ograničenje NOT NULL).

4. Na kraju smo proverili šta imamo u tabelama :

   SELECT * FROM Ucenici WHERE (1);
SELECT * FROM Ucenici2 WHERE (1);

Ako ste sve uradili kako treba, prikazaće se sadržaji obe tabele.

NOVI KONCEPT :

Šta u prikazu sadržaja tabele (u nekom delu) znači null ?

To znači da nema ništa upisano u taj deo (prazno).


Da se podsetimo gradiva od prošle nedelje:

SQL ograničenja
Ograničenje Opis
PRIMARY KEY
primarni ključ u tabeli koji je jedinstven, tj. bez ponavljanja
FOREIGN KEY
spoljni ključ u tabeli koji služi za povezivanje sa drugom tabelom
NOT NULL
vrednost se prilikom unosa naredbom INSERT ne može preskočiti
UNIQUE
vrednost se ne može ponavljati, ne dozvoljava duplikate
DEFAULT
ukoliko se prilikom unosa naredbom INSERT ne unese podatak za kolonu, automatski će se uneti default vrednost
CHECK
vrste provere ( broj veći od 0, broj unetih slova, znak za email...)


U toku kreiranja tabele u bazi podataka mogu se koristiti ograničenja (gore navedena). Svrha ovih ograničenja jeste da se za određene atribute podese neka svojstva. Na primer, primarni i spoljni ključ za povezivanje tabela, default vrednost za polje, not null i unique atributi za polje i check ograničenje za proveru validnocti unosa podataka u polje

Bitno je napomenuti da se određena ograničenja mogu postaviti isključivo na nivou tabele, neka isključivo na nivou kolone, a neka na oba načina po izboru.

primer:

CREATE TABLE ucenici
  ( jmbg    VARCHAR(13) PRIMARY KEY,
    ime   VARCHAR(25) NOT NULL,
    prezime VARCHAR(25) NOT NULL,
   adresa  VARCHAR(25)   );

Da biste potvrdili kreiranje tabele :

DESCRIBE ucenici;


Ako imate problema sa usvajanjem znanja o nekim konceptima koji su korišćeni na času, pogledajte video lekcije koje su postavljene u okviru materijala za vežbe od prethodne nedelje: LINK.


INFO:

Na kraju je rađen blicko od 5 minuta, na papiru.

Sledeći čas će biti za rad ocenu na računaru.

Last modified: Friday, 18 September 2020, 8:29 AM