akcioni upiti u access-u - stevan savić - dejan pejčić

12
Akcioni upiti u MS Access-u Predmet: Računarstvo i informatika Učenici: Nikola Lazić, Ilona Radoičić, Stevan Savić Škola: Ekonomska škola Niš Mentor: Dejan Pejčić

Upload: nasaskolatakmicenja

Post on 02-Jul-2015

1.117 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Akcioni upiti u MS Access-u

Predmet: Računarstvo i informatikaUčenici: Nikola Lazić, Ilona Radoičić, Stevan SavićŠkola: Ekonomska škola NišMentor: Dejan Pejčić

Page 2: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Pojam i vrste akcionih upita

Upiti (query/queries) u Access-u služe nam kako bi imali bolji uvid u podatke koje imamo u tabelama u okviru baze podataka, a takođe i radi analize i izmene istih. Za njihovo proučavanje potrebno je dosta vežbe, pa uz lekciju prilažemo i bazu podataka na kojoj ćemo detaljno objašnjavati sve četiri vrste upita. Bazu otvaramo ovde.

Akcioni upiti imaju široku primenu, daju nam velike mogućnosti, ali su takođe i složeni pa je potrebno svakoj vrsti akcionih upita posvetiti veliku pažnju prilikom njihovog obrađivanja.

Page 3: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Pravljenje akcionog upita započinjemo na isti način kao i pravljenje običnog upita, međutim, nakon što smo izabrali opciju Create query in design view, i izabrali iz kojih tabela želimo da koristimo podatke, potrebno je da sa padajuće liste Query izaberemo koji akcioni upit nam je potreban. Postoje četiri vrste akcionih upita, a to su:

Page 4: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Akcioni upiti

Make table query Append query Delete queryUpdate query

Page 5: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Make table queryAppend query u postojeću tabelu dodaje nove slogove, dok Make table pravi novu tabelu, koja se često koristi za međuobradu podataka. Ovakve privremene tabele često se prave kako bi se “zamrznuli” podaci dok korisnik prikazuje izveštaj.

Make table query se takođe često koriste za izdvajanje podskupa polja ili slogova i njihovo prikazivanje korisniku.

Pogledajmo kako se pravi Make table query:

Page 6: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

• Počinjemo sa pravljenjem običnog upita, biramo koje podatke želimo da prikažemo i iz kojih tabela

• Nakon toga, sa palete alata, izabraćemo opciju Query

• Sa padajuće liste biramo tip akcionog upita koji nam je potreban (Make table query u našem slučaju)

• Sačuvamo naš novi Make table query

• Pokrenemo upit, nakon čega će nas softver obavestiti da ćemo njegovim pokretanjem kreirati novu tabelu, što mi potvrdimo, i na taj način smo formirali novu tabelu kojoj možemo pristupiti na isti način kao i drugim tabelama u okviru date baze podataka

Page 7: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Append query

Pomoću Append query-ja u postojeću tabelu dodajemo nove slogove. Česta je primena ovog upita tokom postupka arhiviranja. Ukoliko npr. imamo tabelu istorijata, u nju podatke unosimo pomoću upita Append, a brišemo ih korišćenjem upita Delete.

Pretpostavimo da smo korišćenjem Make table upita formirali tabelu u kojoj se nalaze radnici čija je plata do 30.000 dinara, a da želimo da njima dodamo i ostale radnike. To ćemo uraditi ovako:

Page 8: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

• Pravimo upit u design prikazu, biramo sa padajuće liste u okviru opcije Query na paleti alata, opciju Append query, pa označimo tabelu Plate kao tabelu kojoj želimo da dodamo slogove (podatke)

• Biramo tabelu RADNIK, a iz nje podatke o imenu, prezimenu i plati, jer te podatke imamo u tabeli Plate

• Sačuvamo naš upit, zatim ga pokrećemo, a nakon što nas access upita da li želimo da tabeli Plate dodamo određeni broj slogova, to potvrdimo

• Sada se imena, prezimena i visine zarada svih radnika nalaze u tabeli plate, dok je to prethodno bio slučaj samo sa radnicima čija su primanja bila manja od 30.000 dinara

Page 9: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Update queryUpdate query koristi se za izmenu svih slogova, tj. svakog sloga koji zadovoljava postavljeni uslov. Update query može se koristiti za istovremenu izmenu podataka u jednom, ili u više polja (čak i u više tabela). Postoji i drugi način obavljanja istog posla, korišćenjem programskog koda, sa čime su upoznati programeri, međutim treba istaći da je ovaj način efikasniji, pa je i, logično, češće korišćen.

Recimo da želimo da radnicima koji su nam već prikazani u tabeli Plate, a čija su mesečna primanja manja od 30.000 povećamo platu na 42.500 dinara. To ćemo uraditi na sledeći način:

Page 10: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

• Pravimo upit u design prikazu, podatke uzimamo iz tabele Plate, međutim, sa padajuće liste u okviru opcije Query na paleti alata, biramo Update query

• U rešetci za postavljanje uslova, u polju Criteria ispod kolone Plateunosimo “<30000”, jer želimo da samo oni čija je plata manja od tog iznosa dobiju povećanje

• U polju Update to unosimo vrednost “42500”, jer je to iznos na koji želimo da povećamo plate

• Sačuvamo naš upit, a zatim ga pokrenemo, nakon čega ćemo u tabeli Plate imati promenjene vrednosti plata za radnike koji su naš uslov postavljen u upitu ispunili

Page 11: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

Delete queryDok Update query menja podatke u nekoj tabeli koji zadovoljavaju zadati uslov, Delete query takve podatke briše. Ovaj upit koristi se kada npr. želimo da obrišemo sve porudžbine koje smo napravili u toku prethodne poslovne godine.

Pošto smo u prethodnim primerima koristili radnike i njihove zarade, zadržaćemo se na tom segmentu poslovanja preduzeća i sada pretpostaviti da će određeni radnici biti uklonjeni sa platnog spiska. Mi ćemo sa spiska, odnosno iz tabele Plate ukloniti one radnike čija je mesečna plata manja od 39.000 dinara. Korak po korak, to ćemo izvesti ovako:

Page 12: Akcioni upiti u Access-u - Stevan Savić - Dejan Pejčić

• Pravimo upit preko design prikaza, podatke izvlačimo iz tabele Plate

• Sa padajuće liste u okviru Query menija na paleti alata biramo Delete query

• U rešetci, u koloni Plata, u Criteria redu, unosimo uslov, “<39000”

• Sačuvamo upit, zatim ga pokrenemo, nakon čega ćemo otvoriti tabelu Plate i u njoj imati samo one radnike čije su plate veće od 39.000 dinara