You are on page 1of 20

INFORMACIONI SISTEMI I

BAZE PODATAKA
NASTAVNA TEMA: NASTAVNA JEDINICA:

Osnovni elementi
INSERT INTO
upitnog jezika SQL
III/ III/ III/
1 2 3
REDNI BROJ ODELJENJE
ČASA: 73. :
III/
4

CILJ ČASA: TIP ČASA:


Upoznavanje učenika sa komandama za unos
Vežbe
podataka
NASTAVNE METODE: NASTAVNA OBLIK RADA:
SREDSTVA:
Demonstrativni Računar, projektor Individualni

VREMENSKA ARTIKULACIJA
ČASA:
Uvodni deo: 10 min Glavni deo: 25 min Završni deo: 10 min
Šta ćemo naučiti

 U ovoj lekciji naučićemo da:


 Objasnimo važnost procesa unošenja podataka u bazu podataka;

 Konstruišemo i izvršavamo komande za unos podataka;

 Konstruišemo i izvršavamo komande za unos specijalnih vrednosti (null,


DATE, itd) pridržavajući se konvencija za unos pdoataka;

 Vršimo unos željenih podataka.


Unošenje podataka

 Na prethodnim časovima bavili smo se dizajnom i kreiranjem objekata relacionih


baza podataka (baze podataka, tabele, kolone, ograničenja,...).
 Međutim, to je samo „kostur“ svake baze podataka. Bez samih podataka, sve što
smo do sada učili gubi smisao.
 Glavna funkcija svakr baze jeste korišćenje i manipulacija nad podacima.
 U narednim časovima bavićemo se problematikom unošenja podataka u tabele.
 Postoje dva načina unošenja podataka u bazu pomoću INSERT INTO komande:
 Eksplicitni INSERT;

 Implicitni INSERT.
INSERT INTO komanda
 INSERT INTO naredba omogućava unos podataka u željenu tabelu.
 Ova naredba se koristi za unos novog reda unutar tabele.
 Naredba zahteva sledeće kriterijume:
 Ime tabele u koju se podaci unose;
 Imena kolona koje se popunjavaju unutar tabele (važi samo za eksplicitni
način unosa);
 Odgovarajuće vrednosti za svaku kolonu.
 Oblik eksplicitne INSERT INTO naredbe je sledeći:
INSERT INTO ime_tabele (column_1,column_2,...,column_n)
VALUES(value1,value2,...,valuen);
 Gde su:
 Ime_tabele – naziv tabele u koju unosimo podatke;
 Column_1,...,column_n – kolone u koje se unose vrednosti
 Value1,...,value_n – vrednosti koje se unose u odgovarajuću kolonu.
INSERT INTO eksplicitni način
 Primer:
 Izvršiti prvo promenu postojeće strukture tabele Osobe:
– Osoba_id treba da bude INT(3) i da ostane primarni ključ,
– Promeniti kolonu Mail u kolonu Dat_rodj tipa DATE,
– Za Grad staviti da je do 30 karaktera i da je podrazumevana vrednost
Beograd.
INSERT INTO eksplicitni način
 Primer:
INSERT INTO ime_tabele (column_1,column_2,...,column_n)
VALUES(value1,value2,...,valuen);
INSERT INTO – eksplicitni način

 Kod ekspilicitnog načina, nakon navođenja imena tabele, navode se i kolone u


koje se ubacuju podaci. Redosled navedenih kolona nije bitan i ne mora biti po
istom redosledu kao pri kreiranju tabele. Ali moraju se navesti sve kolone za koje
vazi ograničenje NOT NULL.
INSERT INTO – implicitni način
 Sintaksa:
INSERT INTO ime_tabele
VALUES (value1,value2,...,valuen);
 Odnosno, prethodna INSERT INTO komanda (eksplicitna), u implicitnom obliku bi
imala sledeći oblik:

 Kod implicitnog načina unosa kolone se ne moraju navoditi, ali se podaci moraju
unositi redosledom po kojem su kolone u tabeli kreirane.
 To znači da moramo znati po kojem redosledu idu kolone tabele u koju unosimo
podatke, tj. moramo znati strukturu same tabele.
Eksplicitni VS Implicitni
 Razmotrimo prvo strukturu tabele Osobe:

 Obratite pažnju na raspored kolona, a zatim na oba INSERT INTO statment-a:


Eksplicitni

Implicitni
Eksplicitni VS Implicitni
 Rezultat:
Unošenje više redova istovremeno

 Nekada je mnogo lakše uneti više podataka (redova) u jednom izvršavanju, neko
unositi svaki red ponaosob.
 MySQL omogućava multirow unošenje podataka.
 Sintaksa:
INSERT INTO ime_tabele (column_1,....column_n)
VALUES(value1,...valuen),
(value1,...valuen),
...
(value1,...valuen);
Pravila i smernice pri unosu podataka

 Pravilo broj 1. Unošenje podataka za svaku posebnu kolonu se odvaja zarezom.


 Pravilo broj 2. Alfanumerički i datumski podaci se moraju pri unosu stavljati pod
znake navoda (‘vrednost ‘ ili “vrednost “).
 Pravilo broj 3. Numerički podaci se mogu, ali ne moraju stavljati pod znake
navoda.
 Pravilo broj 4. U svaku kolonu se mora uneti tip podatka koji je definisan za tu
kolonu.
Unošenje datumskih tipova

 Tip podatka DATE, i slični njemu imaju ogromnu važnost za svaku bazu i mogu se
susresti veoma često u većini baza.
 Datumski tip podatka DATE, kao i svi ostali podaci ovog tipa se pri unošenju
stavlja pod znake navoda i u sledećem foramtu:
INSERT INTO ime_tabele(date_column)
VALUES (‘YYYY-MM-DD’);
 Primer:
INSERT INTO Osobe (Dat_rodj)
VALUES (‘1998-22-07’);
 Datumski tip TIME ima sledeću sintaksu:
INSERT INTO ime_tabele (date_column)
VALUES (‘HH:MM:SS’);
 Primer:
INSERT INTO Time(curnnet_time)
VALUES (‘09:32:35’);
Unošenje datumskih tipova - DATETIME

 Datumski tip DATETIME ima sledeću sintaksu:


INSERT INTO ime_tabele(date_column)
VALUES (‘YYYY-MM-DD HH:MM:SS’);
 Primer:
INSERT INTO Person_Time(date_time)
VALUES (‘1998-22-07 09:32:35’);
Unošenje NULL vrednosti

 NULL vrednosti nam služe da naznače nedostatak određenih podataka u bazi.


 Veoma su korisne, jer na olakšan način se mogu pratiti podaci koji naknadno
mogu biti uneti.
 Postoji više načina da se u bazu podataka unese NULL vrednost.
 Pogledajmo još jednom strukturu naše tabele Osobe.

 Vidimo da su kolone Prezime,Adresa, Dat_rodj i Grad opcionalne.


 Razmotrimo slučaj kada u njih ne želimo da unesemo podatke.
Unošenje NULL vrednosti

 Prvi način: Umesto unošenja vrednosti za kolone koje mogu sadržati NULL
vrednosti, pri unosu jednostavno stavljamo NULL vrednost za datu kolonu.
 Rešenje:
INSERT INTO Osobe(Osobe,Prezime,Ime,Adresa,Dat_rodj, Grad)
VALUES (6,'Pešič','Emilija',NULL,NULL,NULL);
 Potpuno isto se NULL vrednosti unose i na implicitni način.
 Drugi način: NULL vrednosti se mogu unositi tako što umesto same vrednosti za
tu kolonu, ako je tekstualnog tipa mogu navoditi prazni znakovi navoda (‘ ’).
Vežba

 Kreirati tabelu ucenici sa sledećim kolonama:


 id, ime, prezime, adresa, datum_rodjenja, visina. Kolone treba da budu
odgovarajućih tipova podataka, dužinu svake kolone uzeti proizvoljno.
 Pridržavajući se pravila za unos, uneti podatke o tri vaša drugara iz odeljenja (po
izboru).
 Za unos koristiti metod po želji.
 Nakon toga prikažite vaš unos sa SELECT * FROM ucenici; prikazati sve podatke.
Rešenje

 1. Kreiranje tabele:
 CREATE TABLE IF NOT EXISTS ucenici
(id INT NOT NULL PRIMARY KEY,
ime VARCHAR(20) NOT NULL,
prezime VARCHAR(25) NOT NULL,
adresa VARCHAR(40),
drodjenja DATE NOT NULL,
visina INT NOT NULL);
 2. Unos podataka:
 3. Prikaz podataka: SELECT * FROM ucenici;
Predmetni profesor Elizabeta Momčilović

You might also like