Pronalaženje, skrivanje i uklanjanje dupliranih podataka

Ovaj članak sadrži objašnjenja kako da pomoću programa Microsoft Office Access 2007 pronađete i sakrijete ili uklonite duplirane podatke. Po pravilu, duplirane vrednosti bi trebalo da izbrišete kada god je to moguće da biste smanjili troškove i obezbedili veću tačnost podataka. Program Office Access 2007 nudi niz načina kako da pronađete i sakrijete ili da izbrišete duplirane vrednosti, a ovaj članak sadrži objašnjenja o tome kako se koriste najčešće metode.

Izaberite jednu od sledećih mogućnosti:


Razumevanje dupliranih podataka

Jedan od osnovnih razloga za korišćenje relacionih baza podataka je izbegavanje dupliranih podataka. Međutim, što su baze podataka starije, u njima se češće nalaze duplirane vrednosti, pogotovu kada podatke unosi više korisnika. Obično, eliminisanje dupliranih podataka obezbeđuje veću tačnost podataka i štedi novac koji se troši na njihovo skladištenje. Za uzvrat, tačnost podataka može da pomogne u donošenju boljih poslovnih odluka. Na primer, ukoliko podatke o porudžbini unesete više puta, kupac može da dobije robu koja mu ne treba, a redundantnost može i materijalno da vas košta u vidu povećanih troškova isporuke i računovodstva.

Šta znači dupliranje?

Pre nego što identifikujete i izbrišete duplirane zapise, imajte u vidu da bi trebalo da se oslonite na svoje poznavanje podataka. Za razliku od procesa dizajniranja baze podataka, u ovom slučaju ne možete da sledite niz određenih pravila ili procedura da biste duplirane zapise ispravno pronašli i izbrisali. Imajte u vidu jednu činjenicu u daljem radu: upiti baze podataka mogu da vrate rezultate koji izgledaju kao duplirani podaci, a u stvari su važeći podaci. Prividno dupliranje se obično dešava kada upit ne sadrži polja koja jedinstveno identifikuju svaki zapis. Više informacija o obuhvatanju neophodnih polja upitom i izbegavanju lažnih duplikata naći ćete u odeljku Objašnjenje kada zapisi nisu duplikati, koji se nalazi niže u ovom članku.

Takođe, trebalo bi da imate u vidu da ne možete da izbrišete sve duplirane podatke, zato što su neki duplikati neophodni da bi baza podataka ispravno radila. Drugim rečima, baze podataka mogu da sadrže i neophodnu i nepotrebnu redundantnost, a vi želite da eliminišete samo onu koja je nepotrebna.

Neophodna redundantnost se obično svrstava u dve kategorije. Prvi tip redundantnosti je onaj koji omogućava funkcionisanje baze podataka. Na primer, podatke duplirate u polju primarnog ključa kada god je neophodno da među tabelama uspostavite relaciju „jedan-prema-više“ ili „više-prema-više“.

Drugi tip neophodne redundantnosti je onaj koji se pojavljuje kada koristite bazu podataka. Na primer, može da se dogodi da mnogo puta unesete ime grada, dobavljača ili neko često ime, kao na primer Jovan Savić. U tom slučaju, niste u opasnosti da ćete duplirati podatke zato što će druga polja u bazi podataka (kao što su vrednosti primarnog ključa, adrese i poštanski brojevi) sadržati dovoljno jedinstvenih informacija koje će sprečiti da se zapisi smatraju duplikatima.

Nepotrebna redundantnost može da se pojavi na različite načine:

  • Dva ili više zapisa mogu da sadrže duplirana polja.     Dva zapisa mogu da se smatraju duplikatima čak i u slučaju da sva polja zapisa ne sadrže vrednosti koje se podudaraju. Na primer, na sledećoj slici vidite dva zapisa za kompaniju Antonio Moreno Taquería.

Duplirani zapisi za kupca u tabeli „Kupci“

Iako svaki zapis ima jedinstveni ID kupca (vrednost koja se nalazi u krajnjoj levoj koloni), vrednosti u poljima „Ime“, „Adresa“ i „Grad“ se podudaraju. U takvim situacijama, čak i delimično podudaranje bi bilo dovoljno dobar razlog da upotrebite svoje znanje o poslovanju i pregledate zapise da biste videli da li se radi o duplikatima.

  • Dve ili više tabela mogu da sadrže slične podatke.     Na primer, može se dogoditi da otkrijete da tabela „Kupci“ i tabela „Klijenti“ sadrže zapise za iste kupce.

Tabele „Klijenti“ i „Kupci“ sa podacima koji se preklapaju

Iako tabele mogu da imaju različitu strukturu, obe sadrže istu vrstu informacija – podatke o kupcu – tako da bi trebalo da objedinite sve jedinstvene (tj. neduplirane) vrednosti u jednu tabelu i da uklonite tabelu koja je višak.

  • Dve ili više baza podataka mogu da sadrže slične podatke.     Ukoliko otkrijete da dve ili više baza podataka sadrže slične podatke ili ste nasledili bazu podataka koja se preklapa sa onom koju trenutno koristite, baze podataka morate da uporedite prema podacima i strukturi, a potom da preduzmete neophodne korake da biste ih konsolidovali.

Ručno poređenje baza podataka, čak i onih malih, nije lak posao. Ukoliko vam je potrebna pomoć za poređenje, obratite se nezavisnim kompanijama koje prodaju alatke za poređenje sadržaja i strukture Access baza podataka.

Na lokaciji Microsoft Office MarketPlace potražite odeljak „Upravljanje bazama podataka“ da biste proverili koje se alatke za upravljanje bazama podataka trenutno koriste.

 Napomena   Ukoliko ste preduzeli korake da biste iz tabela uklonili duplirane podatke, a i dalje ih vidite u obrascu ili u izveštaju, razlog za to može biti činjenica da su obrasci ili izveštaji pogrešno dizajnirani. Proverite da li su osnovni upiti i tabele ispravno spojene i da li obrazac ili izveštaj obuhvata isključivo jednu kontrolu koja je povezana sa istim izvorom kontrole.

Više informacija o dizajnu izveštaja potražite u članku Izmena, uređivanje i menjanje izveštaja.

Objašnjenje kada zapisi nisu duplikati

U nekim situacijama, kao što je to kada pregledate podatke koje je vratio upit, možete da vidite nešto što liči na duplirane zapise, iako osnovne tabele sadrže isključivo jedinstvene zapise. Problemi mogu da se pojave kada prikaz ne sadrži polja koja jedinstveno identifikuju zapis. Na primer, na sledećoj slici prikazani su podaci dobijeni upitom:

Prikaz koji ne sadrži polje koje može jedinstveno da identifikuje zapise

U ovom prikazu, nekoliko zapisa izgleda kao da su duplikati. Ukoliko upitu dodate nekoliko dodatnih polja, kao što su imena kupaca ili polja primarnog ključa za svaku porudžbinu (ID porudžbine), videćete da je svaki zapis zapravo jedinstven, kao što je to sledeći:

Prikaz sada uključuje polje „ID porudžbine“ da bi eliminisalo duplirane zapise

Po pravilu, kada kreirate upit, on bi trebalo da obuhvati polje ili polja koja svaki zapis jedinstveno identifikuju. Za ovu funkciju se obično koristi polje primarnog ključa, ali umesto njega možete da koristite i kombinacije drugih polja. Na primer, imate slučaj da se ime kontakta i ime grada često pojavljuju i da su uobičajeni, ali ukoliko obuhvatite i broj telefona i adresu, ova kombinacija bi trebalo da svaki zapis učini jedinstvenim.

Faktori koje treba imati na umu kada se suočite sa dupliranjem

Šta ćete uraditi sa dupliranim zapisima zavisi od sledećih faktora:

  • Priroda i obim dupliranja    Da li duplirane podatke vidite u jednoj tabeli ili vidite dve slične tabele (u istoj bazi podataka ili u dve različite baze podataka) čiji se podaci preklapaju? Odnosno, da li vidite duplirane zapise u prikazu koji se zasniva na dve ili više tabela u relaciji?
  • Vaši specifični zahtevi    Šta želite da uradite sa dupliranim podacima? Da li želite da izbrišete zapise iz baze podataka ili samo da ih sakrijete iz prikaza? Da li vrednosti iz dupliranih zapisa želite da izbrojite ili da izračunate njihov prosek ili zbir? Da li je važno koji se od dupliranih zapisa briše ili skriva? Ako jeste, da li te zapise želite ručno da pregledate i da ih izbrišete ili želite da izbrišete one zapise koji se zasnivaju na uslovu? Da li želite ujedno i da ažurirate ili da konsolidujete jedan ili više zapisa pre nego što počnete da brišete zapise?

Odgovori na ova pitanja (na pitanja ovog tipa) i vaše poznavanje podataka bi trebalo da vam omoguće da napravite plan šta da radite sa redundantnim podacima.

Opšte pripreme za uklanjanje duplikata

Ukoliko odaberete da izbrišete duplirane zapise, najpre morate da proverite da li postoje relacije među tabelama. U većini slučajeva, baze podataka koriste relaciju „jedan-prema-više“. Na primer, možete da imate mali broj kupaca, ali da svaki od njih ima veliki broj porudžbina. Kao posledica ovoga, tabela podataka o kupcima stoji na strani „jedan“ u relaciji, a podaci o porudžbinama na strani „više“.

U toku rada se pridržavajte sledećeg pravila: ukoliko podaci koje želite da izbrišete stoje na strani „više“ u relaciji, možete da ih izbrišete bez preduzimanja dodatnih koraka. Međutim, ukoliko podaci stoje na strani „jedan“, u relaciju morate da postavite svojstvo, jer će u protivnom Access sprečiti brisanje.

Više informacija o brisanju podataka koji stoje na strani „jedan“ u relaciji potražite u članku Brisanje jednog ili više zapisa iz baze podataka pomoću upita za brisanje.

Pre nego što počnete da brišete redundantne podatke, razmotrite neki od sledećih načina kako da pripremite bazu podataka:

  • Uverite se da baza podataka nije samo za čitanje.
  • Uverite se da imate potrebne dozvole za uređivanje i brisanje zapisa iz baze podataka.
  • Zamolite sve ostale korisnike baze podataka da zatvore objekte sa kojima želite da radite. Ovo pomaže u sprečavanju kršenja pravila zaključavanja.

 Savet   Ukoliko se veliki broj korisnika poveže sa bazom podataka, možda ćete morati da je zatvorite pa da je ponovo otvorite u isključivom režimu. Da biste to uradili, u programu Access kliknite na dugme Microsoft OfficeSlika dugmeta, a zatim izaberite stavku Otvori. Pronađite lokaciju baze podataka i izaberite je, a zatim kliknite na strelicu pored dugmeta Otvori i izaberite opciju Otvori isključivo.

Otvaranje datoteke u isključivom režimu

  • Napravite rezervnu kopiju baze podataka pre nego što izbrišete zapise. Operaciju brisanja ne možete ni da obrnete ni da opozovete. Jedini način da spasete izbrisane zapise je da ih vratite u prethodno stanje iz rezervne kopije. S obzirom na to da može da se dogodi da operacija brisanja izbriše podatke i u tabelama u relaciji, najbolje je da napravite rezervnu kopiju cele baze podataka pre nego što pokrenete ovu operaciju.

Kako da napravite rezervnu kopiju baze podataka

  1. Kliknite na dugme Microsoft OfficeSlika dugmeta, zatim kliknite na strelicu pored stavke Upravljanje, a potom izaberite opciju Napravi rezervnu kopiju baze podataka.

Pojaviće se dijalog Sačuvaj kao i Access će današnji datum dodati imenu datoteke. Naprimer, ukoliko imate bazu podataka koja se naziva „Osnovna sredstva“, Access će kreirati sledeći tip imena datoteke: Osnovna_sredstva_2006-10-29.

  1. Prihvatite podrazumevano ime i podrazumevanu lokaciju ili izaberite drugo ime ili lokaciju, a zatim kliknite na dugme Sačuvaj.

Access zatvara originalnu datoteku, kreira rezervnu kopiju, a zatim ponovo otvara originalnu datoteku.

Da biste se vratili na rezervnu kopiju, originalnu datoteku zatvorite i preimenujte da bi rezervna kopija mogla da koristi ime originalne verzije. Dodelite ime originalne verzije rezervnoj kopiji i otvorite je u programu Access.

Vrh stranice Vrh stranice

Pripremanje probnih podataka

U odeljcima „Kako da“ u ovom članku nalaze se tabele probnih podataka. Koraci „Kako da“ koriste probne tabele da bi vam pomogli da razumete kako funkcionišu upiti. Ukoliko vam je tako jednostavnije, probne tabele možete da unesete ili da ih uvezete u novu ili u aktuelnu bazu podataka.

Access pruža nekoliko načina za dodavanje ovakvih probnih tabela u bazu podataka. Podatke možete da unesete ručno, da kopirate svaku tabelu u program za unakrsne tabele (kao što je to Office Excel 2007), a zatim da radne listove uvezete u Access ili da podatke nalepite u program za obradu teksta, kao što je to Beležnica, a da zatim podatke uvezete iz rezultujućih tekstualnih datoteka.

Koraci u ovom odeljku sadrže objašnjenja o tome kako da podatke ručno unesete u prazan list sa podacima, a takođe i kako da kopirate probne tabele u Excel i da ih zatim uvezete u Access 2007. Više informacija o kreiranju i uvozu tekstualnih podataka potražite u članku Uvoz podataka ili povezivanje sa podacima u tekstualnoj datoteci.

Koraci „Kako da“ u ovom članku koriste sledeće tabele:

Tabela Kupci:

Ime kompanije Ime kontakta Adresa Grad Poštanski broj Telefon
Baldwin Museum of Science Jordan Branković Manova ulica 1234 Njujork 12345 (011) 012-2122
Blue Yonder Airlines Vlajko Helić Prva ulica 1052 Boston 23456 (014) 012-2123
Coho Winery Tica Gavrilo Avenija Lala 3122 Sijetl 34567 (099) 012-2124
Contoso Pharmaceuticals Žarko Baljević Bulevar Kolibrija 1 London NS1 EW2 (071) 012-2125
Fourth Coffee Đurađ Prica Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2126
Coho Winery Hristina Hujović Ulica Lala 3122 Sijetl 34567 (099) 012-2125
Humongous Insurance Stefan Ratković Ulica Velika 67 Tampa 01234 (095) 012-2128
Trey Research Dana Brković Nosićevo sokače 2 Portland 43210 (081) 012-2129
Fourth Coffee Rajna Patković Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2233

Tabela Zaposleni:

Prezime Ime Adresa Grad Datum rođenja Datum zapošljavanja
Branković Jordan Manova ulica 1234 Novi Sad 05.02.1968 10.06.1994
Helić Vlajko Prva ulica 1052 Subotica 22.05.1957 22.11.1996
Gavrilo Tica Avenija Lala 3122 Sombor 11.11.1960 11.03.2000
Baljević Žarko Bulevar Kolibrija 1 Beograd 22.03.1964 22.06.1998
Prica Đurađ Simićeva ulica 1122 Niš 05.06.1972 05.01.2002
Hujović Kristina Ulica Lala 3122 Sombor 23.01.1970 23.04.1999
Ratković Stevan Ulica Velika 67 Valjevo 14.04.1964 14.10.2004
Brković Dana Nosićevo sokače 2 Požarevac 29.10.1959 29.03.1997
Baljević Žarko Bulevar Kolibrija 1 Beograd 22.03.1964 20.06.1998

Tabela Iznos dugovanja:

Ime kompanije Ime kontakta Adresa Grad Poštanski broj Telefon Iznos duga
Baldwin Museum of Science Jordan Branković Manova ulica 1234 Njujork 12345 (011) 012-2122 556,78 din.
Blue Yonder Airlines Vlajko Helić Prva ulica 1052 Boston 23456 (014) 012-2123 1893,24 din.
Coho Winery Tica Gavrilo Avenija Lala 3122 Sijetl 34567 (099) 012-2124 321,79 din.
Contoso Pharmaceuticals Žarko Baljević Bulevar Kolibrija 1 London NS1 EW2 (071) 012-2125 457,68 din.
Fourth Coffee Đurađ Prica Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2126 98,75 din.
Coho Winery Kristina Hujović Ulica Lala 3122 Sijetl 34567 (099) 012-2125 321,79 din.
Humongous Insurance Stefan Ratković Ulica Velika 67 Tampa 01234 (095) 012-2128 297,45 din.
Trey Research Dana Brković Nosićevo sokače 2 Portland 43210 (081) 012-2129 509,09 din.
Fourth Coffee Rajna Patković Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2233 98,75 din.

Tabela Klijenti:

Ime Adresa Grad Telefon Faks
Baldwin Museum of Science Manova ulica 1234 Njujork (011) 012-2122 (011) 012-2122
Blue Yonder Airlines Prva ulica 1052 Boston (014) 012-2123 (014) 012-2123
Coho Winery Avenija Lala 3122 Sijetl (099) 012-2124 (099) 012-2124
Contoso Pharmaceuticals Bulevar Kolibrija 1 London (071) 012-2125 (071) 012-2125
Fourth Coffee Simićeva ulica 1122 Meksiko Siti (017) 012-2126 (017) 012-2126
Consolidated Messenger Ulica Lala 3122 Sijetl (099) 012-2125 (099) 012-2129
Graphic Design Institute Ulica Velika 67 Tampa (095) 012-2128 (095) 012-2128
Litware, Inc. Mirkov put 3 Portland (081) 012-2129 (081) 012-2110
Tailspin Toys Mirkov put 4 Portland (081) 012-2233 (081) 012-2239

Kako da probne podatke unesete ručno

  1. Na kartici Kreiranje, u grupi Tabele izaberite stavku Tabela.

Slika glavne trake programa Access

Access će dodati novu praznu tabelu u bazu podataka.

 Napomena   Nije potrebno da izvršite ovaj korak ako otvorite novu praznu bazu podataka, ali će biti potrebno da ga pratite kad god je potrebno da dodate tabelu u bazu podataka.

  1. Dvaput kliknite na prvu ćeliju u redu zaglavlja i upišite ime polja u probnoj tabeli.

Access prazna polja u redu zaglavlja podrazumevano označava tekstom Dodavanje novog polja, kao što je prikazano:

Novo polje u listu sa podacima

  1. Koristite tastere sa strelicama da biste se pomerili u sledeću praznu ćeliju zaglavlja, a zatim upišite ime drugog polja (takođe, možete da pritisnete i taster TAB ili da kliknete dvaput na novu ćeliju). Ponovite ovaj korak dok ne unesete imena svih polja.
  2. Unesite podatke u probnu tabelu.

Dok unosite podatke, Access određuje tip podataka za svako polje. Ukoliko niste iskusni u radu sa bazama podataka, trebalo bi da unesete specifični tip podataka, kao što je to „Broj“, „Tekst“ ili „Datum/Vreme“ za svako polje u tabeli. Postavljanje tipa podataka obezbeđuje tačan unos podataka, a takođe sprečava greške, kao što je recimo upotreba broja telefona u izračunavanju. Za navedene probne tabele bi trebalo da prepustite programu Access da odredi tip podataka.

  1. Kada završite unos podataka, kliknite na dugme Sačuvaj.

Prečice na tastaturi  Pritisnite kombinaciju tastera CTRL+S.

Pojaviće se dijalog Sačuvaj kao.

  1. U okvir Ime tabele upišite ime probne tabele, a zatim kliknite na dugme U redu.

Koristite imena svih probnih tabela, jer upiti u odeljcima sa objašnjenjima o načinu korišćenja upotrebljavaju ta imena.

Kreiranje probnih radnih listova

  1. Pokrenite program za unakrsne tabele i kreirajte novu praznu datoteku. Ako koristite Excel, nova prazna radna sveska se podrazumevano kreira.
  2. Kopirajte prvu probnu tabelu iz prethodnog odeljka i nalepite je u prvi radni list, počevši od prve ćelije,
  3. Koristeći tehniku programa za unakrsne tabele, radnom listu dodelite isto ime kao i probnoj tabeli. Na primer, ukoliko se probna tabela naziva Kategorije, radnom listu dajte isto ime.
  4. Ponovite korake 2 i 3 tako što ćete kopirati svaku probnu tabelu u prazan radni list koji ćete preimenovati.

 Napomena   Možda će biti potrebno da u svoju datoteku unakrsnih tabela dodate radne listove. Više informacija o izvršenju tog zadatka potražite u pomoći programa za unakrsne tabele.

  1. Sačuvajte radnu svesku na pogodnu lokaciju na računaru ili na mreži, a zatim pređite na sledeću grupu koraka.

Kreiranje tabela baze podataka iz radnih listova

  1. U novoj ili postojećoj bazi podataka:

Na kartici Spoljni podaci, u grupi Uvoz izaberite stavku Excel.

Slika glavne trake u programu Access

–ili–

Kliknite na dugme Još, a zatim sa liste izaberite program za unakrsne tabele.

Pojaviće se dijalog Preuzimanje spoljašnjih podataka – Ime programa unakrsna tabela.

  1. Kliknite na dugme Potraži, otvorite datoteku unakrsne tabele koju ste kreirali u prethodnim koracima, a zatim kliknite na dugme U redu.

Pokrenuće se čarobnjak za uvoz unakrsnih tabela.

  1. Čarobnjak podrazumevano izabira prvi radni list u radnoj svesci („Kupci“, ako ste pratili korake u prethodnom odeljku) i podaci iz radnog lista se prikazuju u donjem delu stranice čarobnjaka. Kliknite na dugme Dalje.
  2. Na sledećoj stranici čarobnjaka potvrdite izbor Prvi red sadrži naslove kolona, a zatim kliknite na dugme Dalje.
  3. Opcionalno, na sledećoj stranici čarobnjaka, pomoću okvira za tekst i lista iz odeljka Opcije polja promenite imena polja i tipove podataka ili izostavite polja iz operacije uvoza. U suprotnom, kliknite na dugme Dalje.
  4. Ostavite potvrđen izbor Neka Access doda primarni ključ, a zatim kliknite na dugme Dalje.
  5. Access na novu tabelu podrazumevano primenjuje ime radnog lista. Prihvatite ime ili unesite drugo ime, a zatim kliknite na dugme Završi.
  6. Ponavljajte korake od 1 do 7 sve dok ne kreirate tabelu od svakog radnog lista u radnoj svesci programa Excel.

Vrh stranice Vrh stranice

Pronalaženje, uređivanje, skrivanje i brisanje dupliranih podataka u jednoj tabeli

Koraci u sledećim odeljcima objašnjavaju najčešće načine za pronalaženje, skrivanje ili brisanje dupliranih vrednosti u jednoj tabeli.



Pronalaženje zapisa u kojima se neka polja u potpunosti ili delimično podudaraju

Proces pronalaženja zapisa koji sadrže vrednosti koje se u potpunosti ili delimično podudaraju izvodi se po sledećim opštim koracima:

  • Kreirajte upit pomoću čarobnjaka za pronalaženje duplikata. Upit podrazumevano vraća zapise koji se podudaraju samo onda kada se vrednosti u svakom polju podudaraju znak po znak. Ukoliko treba da pronađete delimično podudaranje, u upitu možete da upotrebite izraz ili da promenite SQL (Structured Query Language) kôd.
  • Opcionalno, uredite vrednosti polja ili izbrišite zapise kada rezultate upita pregledate u prikazu lista sa podacima.
  • Opcionalno, u upitu promenite SQL (Structured Query Language) kôd da biste tražili vrednosti koje se delimično podudaraju. Ukoliko ne promenite SQL kôd, upit će vratiti samo one zapise u kojima se vrednosti u naznačenim poljima podudaraju znak po znak.

Koraci u ovom odeljku objašnjavaju kako da kreirate upit za duplikate i kako da ga izmenite tako da traži delimična podudaranja. U koracima se koristi tabela „Kupci“ koja se nalazi u sledećoj tabeli. Da biste koristili tabelu u bazi podataka, pogledajte odeljak Priprema probnih podataka, na početku ovog članka. Korake možete da prilagodite tako da odgovaraju vašim podacima.

Ime kompanije Ime kontakta Adresa Grad Poštanski broj Telefon
Baldwin Museum of Science Jordan Branković Manova ulica 1234 Njujork 12345 (011) 012-2122
Blue Yonder Airlines Vlajko Helić Prva ulica 1052 Boston 23456 (014) 012-2123
Coho Winery Tica Gavrilo Avenija Lala 3122 Sijetl 34567 (099) 012-2124
Contoso Pharmaceuticals Žarko Baljević Bulevar Kolibrija 1 London NS1 EW2 (071) 012-2125
Fourth Coffee Đurađ Prica Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2126
Coho Winery Kristina Hujović Ulica Lala 3122 Sijetl 34567 (099) 012-2125
Humongous Insurance Stefan Ratković Ulica Velika 67 Tampa 01234 (095) 012-2128
Trey Research Dana Brković Nosićevo sokače 2 Portland 43210 (081) 012-2129
Fourth Coffee Rajna Patković Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2233

Kreiranje upita za duplikate

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Čarobnjak za upite.

Slika glavne trake programa Access

  1. U dijalogu Novi upit izaberite opciju Čarobnjak za upit za pronalaženje duplikata, a zatim kliknite na dugme U redu.

Ukoliko se pojavi poruka upozorenja koja vas obaveštava da ova funkcija nije instalirana, kliknite na dugme Da da biste instalirali čarobnjak.

  1. Sa liste tabela izaberite onu koja sadrži duplirane podatke, a zatim kliknite na dugme Dalje.
  2. Sa liste dostupnih polja izaberite samo ona polja koje sadrži duplirane informacije. Ukoliko koristite tabelu „Kupci“, dodajte samo polja „Ime kompanije“, „Adresa“ i „Grad“ zato što jedino ona sadrže vrednosti koje se podudaraju znak po znak. Kliknite na dugme Dalje.

 Napomena   Ukoliko polja koja ste dodali u ovom koraku ne sadrže podudaranje znak po znak, može da se dogodi da upit ne vrati nikakve rezultate.

  1. Sa sledeće liste dostupnih polja izaberite polja koja sadrže podatke koje želite da proverite ili da ažurirate ili ona koja sadrže podatke koji mogu da vam pomognu da razlikujete duplirane zapise od onih koji nisu duplirani. Ukoliko koristite tabelu „Kupci“, dodajte polja „Ime kontakta“ i polja telefona, zato što pomoću tih podataka u tim poljima možete da pronađete duplirane vrednosti i da eventualno otkrijete zašto su te vrednosti bile unete. Kliknite na dugme Dalje.
  2. Prihvatite predloženo ime (Pronađi duplikate za „Kupce“) ili unesite ime koje želite, a zatim kliknite na dugme Završi da biste pokrenuli upit. Ukoliko ste koristili tabelu „Kupci“, dobićete sledeći rezultat:
Ime kompanije Adresa Grad Ime kontakta Telefon
Fourth Coffee Simićeva ulica 1122 Meksiko Siti Đurađ Prica (017) 012-2126
Fourth Coffee Simićeva ulica 1122 Meksiko Siti Rajna Patković (017) 012-2233
  1. Kada ste kreirali tabelu „Kupci“, možda ste primetili više od dva duplirana zapisa (tabela sadrži četiri). Ne vidite ostale duplikate zato što se vrednosti u polju „Adresa“ ne podudaraju znak po znak. Upit možete da izmenite tako da vrati vrednosti koje se delimično podudaraju – a to je objašnjeno u sledećem skupu koraka.

Prilagođavanje upita da bi ste pronašli vrednosti koje se delimično podudaraju

  1. Upit prebacite u SQL prikaz. Da biste to uradili možete da:
    • Kliknete desnim tasterom miša na karticu dokumenta za upit, a zatim da izaberite stavku SQL prikaz.
    • U oknu za navigaciju kliknite desnim tasterom miša na upit, a zatim izaberite stavku SQL Prikaz.
  2. Izmenite SQL kôd da biste pronašli i uporedili delimične vrednosti.

Ukoliko ste u prethodnim koracima koristili tabelu „Kupci“, videćete sledeći SQL izraz:

SELECT Kupci.[Ime kompanije], Kupci.[Adresa], Kupci.[Grad], Kupci.[Ime kontakta], Kupci.[Telefon]
FROM Kupci
WHERE (((Kupci.[Ime kompanije]) In (SELECT [Ime kompanije] FROM [Kupci] As Tmp GROUP BY [Ime kompanije],[Adresa],[Grad] HAVING Count(*)>1 And [Adresa] = [Kupci].[Adresa] And [Grad] = [Kupci].[Grad])))
ORDER BY Kupci.[Ime kompanije], Kupci.[Adresa], Kupci.[Grad];

U ovom slučaju, odredba WHERE koristi drugi SELECT izraz da bi uporedila svaki zapis u odnosu na sve ostale zapise i tako identifikovala skupove duplikata.

Pretpostavimo da treba da izmenite polje „Adresa“ da biste dobili delimična podudaranja. U sledećoj tabeli prikazano je kako da izmenite izraz tako da samo prvih sedam znakova polja mora da se podudara. Izmene su podebljane:

SQL izraz Opis
SELECT Kupci.[Ime kompanije], Kupci.[Adresa], Kupci.[Grad], Kupci.[Ime kontakta], Kupci.[Telefon] Bez promena. Želite da vidite ista polja, što obuhvata i celo polje „Adresa“ za svaki skup dupliranih zapisa.
FROM Kupci Bez promena.
WHERE (((Kupci.Ime kompanije) In (SELECT [Ime kompanije] FROM [Kupci] As Tmp GROUP BY [Ime kompanije],Left([Adresa];7), [Grad] HAVING Zamenjuje polje ([Adresa]) pozivom funkcije koja se obavlja u polju „Adresa“ (Left([Adresa];7)) da bi odredila dupliranje. Time se proverava prvih sedam znakova u polju „Adresa“ umesto celokupne vrednosti polja. Unesite manji broj da biste pronašli podudaranje manjeg broja znakova. Unesite veći broj da biste pronašli podudaranje više od sedam znakova.
Count(*)>1 And Left([Adresa];7) =Left([Kupci].[Adresa];7) And [Grad] = [Kupci].[Grad]))) Da biste uporedili prvih sedam znakova u polju „Adresa“ iz jednog zapisa sa onim iz drugog zapisa, zamenite polje [Adresa] pozivom funkcije Left([Adresa];7), a polja [Kupci].[Adresa] pozivom funkcije Left([Kupci].[Adresa];7).
ORDER BY Kupci.Ime kompanije, Kupci.Adresa, Kupci.Grad; Bez promena.
  1. Nakon što ste izmenili izraz, kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli podatke u prikazu lista sa podacima.

Upit će vratiti sva četiri duplirana zapisa zato što sada pronalazi podudaranja samo za prvih 7 znakova (počevši s leva) u polju „Adresa“:

Ime kompanije Adresa Grad Ime kontakta Telefon
Coho Winery Avenija Lala 3122 Sijetl Tica Gavrilo (099) 012-2124
Coho Winery Avenija Lala 3122 Sijetl Kristina Hujović (099) 012-2125
Fourth Coffee Simićeva ulica 1122 Meksiko Siti Đurađ Prica (017) 012-2126
Fourth Coffee Simićeva ulica 1122 Meksiko Siti Rajna Patković (017) 012-2233

Ručno uređivanje zapisa

  1. U prikazu lista sa podacima otvorite upit koji ste kreirali primenom prethodnog skupa koraka.
  2. Postupite na neki od sledećih načina:
    • Da biste vrednost uredili u polju, izaberite polje i unesite novu vrednost.
    • Da biste izbrisali ceo zapis (red), kliknite na odabirač reda (prazno polje pored reda) i pritisnite taster DELETE.

 Napomena   Ukoliko pronađete veliki broj dupliranih zapisa (veći od onog koji možete ručno da izbrišete), takve zapise možete da izbrišete kreiranjem i pokretanjem upita za brisanje. Osnovne korake koji se primenjuju prilikom kreiranja i pokretanja upita za brisanje potražite u odeljku Brisanje dupliranih zapisa pomoću upita za brisanje, koji se nalazi niže u ovom članku.

Potpunije informacije o korišćenju upita za brisanje – obuhvatajući i one koje se odnose na planiranje brisanja, na menjanje relacija tabela i na brisanje podataka u relaciji – potražite u članku Brisanje jednog ili više zapisa iz baze podataka pomoću upita za brisanje.

Vrh odeljka

Omogućavanje prikaza jedinstvenih podataka skrivanjem duplikata

Većina baza podataka sadrži polje koje jedinstveno identifikuje svaki zapis, a to je obično polje primarnog ključa. Kada dizajnirate upit i sakrijete ili izostavite ovakav tip polja, može da se dogodi da vidite nešto što liči na duplirane zapise zato što se vrednosti u svim vraćenim poljima podudaraju.

Na primer, na sledećoj slici je prikazan rezultat upita u kome dve porudžbine (u crvenom okviru) izgledaju kao duplikati.

Upit zasnovan na tabeli „Kupci“ u kojoj dva zapisa imaju vrednosti koje se podudaraju u svim poljima

Međutim, kad bi upit sadržao polje primarnog ključa, kao što je to ID porudžbine ili neko drugo polje koje jedinstveno identifikuje svaki zapis, poput datuma otpreme, videli biste da zapisi nisu duplikati. Koraci u ovom odeljku objašnjavaju kako da sakrijete duplirane zapise tamo gde se podudaraju vrednosti u svim poljima koje je upit vratio. Na primer, možete da sakrijete jedan od zapisa za kompaniju Antonio Moreno Taqueria, ali ne i za Blauer See Delikatessen, zato što polja „Adresa“ sadrže različite vrednosti.

U toku rada se pridržavajte sledećeg pravila: dva ili više zapisa se smatraju duplikatima samo kada sva polja u rezultatima upita sadrže iste vrednosti. Ukoliko se vrednosti razlikuju makar i u jednom jedinom polju, svaki zapis je jedinstven i takve zapise ne možete da sakrijete primenom tehnike koja je ovde prikazana. Ukoliko želite da sakrijete takvu vrstu zapisa, to možete da uradite pomoću upita za ukupne vrednosti sa agregatnom funkcijom, kao što su to FIRST, MIN, MAX itd. Više informacija o ovome potražite u odeljku Omogućavanje prikaza različitih zapisa određivanjem koji se duplikati pojavljuju u rezultatima niže u ovom članku.

Access pruža dva načina za prikazivanje isključivo jedinstvenih vrednosti u skupu rezultata upita:

  • Ukoliko ste sakrili polje primarnog ključa (ili neko drugo polje koje zapis čini jedinstvenim), otkrijte tu kolonu.
  • Kreirajte upit za izdvajanje, a zatim postavite njegovo svojstvo Jedinstvene vrednosti na Da. Kada upit pronađe duplirane vrednosti, prikazaće samo jedan od takvih duplikata (prvi koji pronađe), a ostale će sakriti.

Koraci u ovom odeljku objašnjavaju kako da se koriste obe tehnike.

Prikazivanje skrivenih polja

  1. Otvorite upit u prikazu lista sa podacima i kliknite desnim tasterom miša bilo gde na zaglavlje reda (red koji sadrži zaglavlja kolona), a zatim izaberite stavku Otkrij kolone.
  2. U dijalogu Otkrivanje kolona potvrdite izbor u polju za potvrdu pored svakog polja koje želite da dodate u list sa podacima, a zatim kliknite na dugme U redu.

Postavljanje svojstva „Jedinstvene vrednosti“

 Napomena   Nakon što ste svojstvo upita Jedinstvene vrednosti postavili na Da nećete moći da uredite vrednosti polja ili da izbrišete podatke kada je upit u prikazu lista sa podacima. Da biste uredili ili izbrisali podatke, otvorite osnovnu tabelu u prikazu lista sa podacima.

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Čarobnjak za upite.

Slika glavne trake programa Access

  1. U dijalogu Novi upit izaberite stavku Čarobnjak za jednostavne upite, a zatim kliknite na dugme U redu.

Ukoliko se pojavi poruka upozorenja koja vas obaveštava da ova funkcija nije instalirana, kliknite na dugme Da da biste instalirali čarobnjak.

  1. Sa liste tabela izaberite onu koja sadrži duplirane zapise, a zatim kliknite na dugme Dalje.
  2. Sa liste dostupnih polja izaberite samo ono polje koje sadrži duplirane informacije, a zatim kliknite na dugme Dalje.
  3. Ponovo kliknite na dugme Dalje bez biranja dodatnih polja. Dodavanje bilo kojih drugih polja može da navede Access da tretira neke duplirane zapise kao jedinstvene.
  4. Prihvatite predloženo ime za upit ili unesite svoje ime, izaberite opciju Izmeni dizajn upita, a zatim kliknite na dugme Završi da biste otvorili upit u prikazu dizajna.
  5. Kliknite desnim tasterom miša na praznu oblast u gornjoj polovini dizajnera upita, a zatim izaberite stavku Svojstva.
  6. U listu sa svojstvima pronađite svojstvo Jedinstvene vrednosti i promenite ga u Da.

Prikazivanje lista sa svojstvima za upit

  1. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli rezultate u prikazu lista sa podacima. Ukoliko podaci sadrže duplirane zapise, pojaviće se samo jedan od ovih zapisa.

Vrh odeljka

Omogućavanje prikaza različitih zapisa određivanjem koji se duplikati pojavljuju u rezultatima

Kada postoje duplirani zapisi, možda ćete želeti da vidite samo različite vrednosti – po jedan zapis iz svakog skupa duplikata. Pretraživanje pojedinog duplikata zapisa izvršite pomoću vrste upita koji se naziva upit za ukupne vrednosti. Kada upitu za ukupne vrednosti dodate polja, on svako polje tretira kao grupu, a vi možete da pokrenete funkciju koja se naziva agregatna funkcija i da je primenite na podatke u grupi. Za uzvrat, te funkcije mogu da vrate po jedan zapis iz skupa duplikata.

Upit za ukupne vrednosti i agregatnu funkciju možete da primenite na podatke na nekoliko načina:

  • Upotrebite funkciju First da biste omogućili prikaz isključivo zapisa koji je unet prvi.
  • Upotrebite funkciju Last da biste omogućili prikaz isključivo zapisa koji je unet poslednji.
  • Upotrebite funkciju Max ili Min da biste omogućili prikaz isključivo zapisa sa najmanjom ili najvećom vrednošću u pojedinom polju. Na primer, možete da omogućite prikaz zapisa najskorijeg datuma primenom funkcije Max ili da omogućite prikaz zapisa najstarijeg datuma primenom funkcije Min.

 Napomena   Podatke koje vraća ovakav tip upita ne možete da uređujete. Da biste podatke uredili ili izbrisali, otvorite osnovnu tabelu u prikazu lista sa podacima.

Koraci u ovom odeljku objašnjavaju kako da postavite upit da biste pronašli originalne, najskorije i najstarije zapise. U koracima se koristi tabela „Zaposleni“

Prezime Ime Adresa Grad Datum rođenja Datum zapošljavanja
Branković Jordan Manova ulica 1234 Novi Sad 05.02.1968 10.06.1994
Helić Vlajko Prva ulica 1052 Subotica 22.05.1957 22.11.1996
Gavrilo Tica Avenija Lala 3122 Sombor 11.11.1960 11.03.2000
Baljević Žarko Bulevar Kolibrija 1 Beograd 22.03.1964 22.06.1998
Prica Đurađ Simićeva ulica 1122 Niš 05.06.1972 05.01.2002
Hujović Kristina Ulica Lala 3122 Sombor 23.01.1970 23.04.1999
Ratković Stevan Ulica Velika 67 Valjevo 14.04.1964 14.10.2004
Brković Dana Nosićevo sokače 2 Požarevac 29.10.1959 29.03.1997
Baljević Žarko Bulevar Kolibrija 1 Beograd 22.03.1964 20.06.1998

Ukoliko želite da koristite tabelu iz baze podataka, pogledajte korake u odeljku Pripremanje probnih podataka u gornjem delu ovog članka.

Korišćenje upita za sabiranje

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

  1. U dijalogu Prikazivanje tabele dvaput kliknite na tabelu koja sadrži duplirane zapise, a zatim kliknite na dugme Zatvori.

Tabela se pojavljuje u gornjem delu dizajnera upita.

  1. Dodajte samo polja koja sadrže duplirane podatke. Možete dvaput da kliknete na polje ili da ga iz prozora tabele prevučete u red Polje koordinatne mreže za dizajn.

Ukoliko koristite probnu tabelu „Zaposleni“, dodajte polja „Prezime“, „Ime“ i „Datum rođenja“ zato što ta polja određuju dupliranje.

  1. Dodajte polje koje određuje kriterijum za izbor.

U probnu tabelu „Zaposleni“ dodajte polje „Datum zapošljavanja“ zato što to polje sadrži dve različite vrednosti za zaposlenog.

 Napomena   Nemojte dodavati više polja u koordinatnu mrežu. Upit za sabiranje mora da sadrži samo polja koja sadrže duplirane podatke i još jedno polje koje sadrži podatke koje koristite u testiranju.

  1. Na kartici Dizajn, u grupi Prikazivanje/Skrivanje kliknite na dugme Ukupne vrednostiSlika dugmeta. U koordinatnoj mreži za dizajn će se pojaviti red Ukupno, a u kolonama koje sadrže polje tabele će se pojaviti vrednost Grupiši po.
  2. Ostavite red Ukupno svim poljima koja su postavljena na vrednost Grupiši po, a zatim kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i podatke videli u prikazu lista sa podacima. Ukoliko ste koristili podatke iz prethodne tabele, upit će dva puta vratiti ime Žarko Baljević zato što njegovi duplirani zapisi imaju različite datume zapošljavanja.
  3. Vratite se na prikaz dizajna i odredite uslov za biranje jednog zapisa iz više duplikata. Da biste koristili probne podatke, promenite vrednost u koloni „Datum zapošljavanja“ u redu Ukupno na sledeći način:
    • Da biste videli originalni zapis, vrednost promenite u First.
    • Da biste videli zapis koji je unet poslednji, vrednost promenite u Last.
    • Da biste izabrali zapis koji se zasniva na vrednosti u pojedinom polju, koristite funkciju Max ili Min. U ovom primeru želite da vidite zapis sa najstarijim datumom zapošljavanja. Da biste to uradili, vrednost promenite u Min.
  4. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli rezultate u prikazu lista sa podacima.

Ukoliko upit vrati željene rezultate, možete da ga promenite u upit za brisanje, a zatim da ga pokrenete da biste brzo i lako izbrisali duplirane zapise. Više informacija o pokretanju upita za brisanje potražite u odeljku Brisanje dupliranih zapisa pomoću upita za brisanje niže u ovom članku.

Vrh odeljka

Primenjivanje agregatnih funkcija (Count, Sum, Average) na duplirane zapise

Pored toga što one vraćaju određeni zapis iz grupe duplikata, agregatne funkcije možete da koristite i da biste izbrojali broj dupliranih zapisa ili da biste podatke sumirali za skup duplikata. Ove funkcije ćete obično pokrenuti pre nego što preduzmete korake da biste konsolidovali ili izbrisali duplirane podatke.

Ovi zadaci se obavljaju tako što se kreira upit za sabiranje koji koristi agregatne funkcije kao što su Count, Sum i Average da bi se sumirali duplirani podaci u tabeli.

 Napomena   Niste u mogućnosti da uređujete vrednosti polja niti da brišete zapise dok je upit za ukupne vrednosti u prikazu lista sa podacima. Da biste uredili ili izbrisali podatke, otvorite osnovnu tabelu u prikazu lista sa podacima.

Koraci u ovom odeljku koriste tabelu „Iznos dugovanja“.

Ime kompanije Ime kontakta Adresa Grad Poštanski broj Telefon Iznos duga
Baldwin Museum of Science Jordan Branković Manova ulica 1234 Njujork 12345 (011) 012-2122 556,78 din.
Blue Yonder Airlines Vlajko Helić Prva ulica 1052 Boston 23456 (014) 012-2123 1.893,24 din.
Coho Winery Tica Gavrilo Avenija Lala 3122 Sijetl 34567 (099) 012-2124 321,79 din.
Contoso Pharmaceuticals Žarko Baljević Bulevar Kolibrija 1 London NS1 EW2 (071) 012-2125 457,68 din.
Fourth Coffee Đurađ Prica Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2126 98,75 din.
Coho Winery Kristina Hujović Ulica Lala 3122 Sijetl 34567 (099) 012-2125 321,79 din.
Humongous Insurance Stefan Ratković Ulica Velika 67 Tampa 01234 (095) 012-2128 297,45 din.
Trey Research Dana Brković Nosićevo sokače 2 Portland 43210 (081) 012-2129 509,09 din.
Fourth Coffee Rajna Patković Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2233 98,75 din.

Ukoliko želite da koristite tabelu iz baze podataka, pogledajte korake u odeljku Pripremanje probnih podataka u gornjem delu ovog članka.

Kreiranje upit za sabiranje

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

  1. U dijalogu Prikazivanje tabele dvaput kliknite na tabelu koju želite da koristite u upitu ili kliknite na dugme Dodaj, a zatim na dugme Zatvori da biste zatvorili dijalog. Ukoliko koristite probne podatke, u upit dodajte tabelu „Iznos dugovanja“.
  2. Dodajte polja koja sadrže duplirane podatke.

Ukoliko koristite tabelu „Iznos dugovanja“, dodajte polja „Ime kompanije“ i „Grad“ zato što ta polja određuju dupliranje.

  1. Dodajte polje koje obezbeđuje kriterijum za izbor. Ukoliko koristite tabelu „Iznos dugovanja“, dodajte polje „Iznos duga“.
  2. Na kartici Dizajn, u grupi Prikazivanje/Skrivanje kliknite na dugme Ukupne vrednostiSlika dugmeta. U koordinatnoj mreži za dizajn će se pojaviti red Ukupno, a u redu će se pojaviti vrednost Grupiši po za svako polje.
  3. Postupite na neki od sledećih načina, u zavisnosti od vaših potreba:
    • Da biste izbrojali broj zapisa, izaberite polje koje sadrži vrednosti koje želite da izbrojite, a zatim promenite vrednost u polju Ukupno na Brojanje. Ukoliko koristite probne podatke, postavite vrednost u polju „Iznos duga“ na Brojanje.
    • Da biste izračunali ukupnu količinu, postavite vrednost u polju na Zbir.

 Napomena   Upit za sabiranje može da prikaže isključivo sažete informacije. Ne možete da omogućite prikaz pojedinačnih vrednosti.

  1. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli rezultate u prikazu lista sa podacima.

Vrh odeljka

Brisanje dupliranih zapisa pomoću upita za brisanje

Nakon što ste potvrdili da tabela sadrži duplirane zapise, neželjene podatke možete da izbrišete tako što ćete kreirati i pokrenuti upit za brisanje. Proces kreiranja i pokretanja upita za brisanje obično se izvodi po sledećim opštim koracima:

  • Planiranje brisanja. Ovo je deo procesa u kome određujete da li su podaci koje želite da izbrišete u relaciji sa podacima u drugoj tabeli. Ukoliko jesu, treba da odredite da li podaci stoje na strani „jedan“ ili na strani „više“ u relaciji „jedan-prema-više“. Ukoliko podaci stoje na strani „jedan“, da biste mogli da izbrišete podatke morate da omogućite svojstvo u relaciji. Ukoliko podaci stoje na strani „više“, možete da kreirate i da pokrenete upit bez te dodatne radnje. Možete da koristite alatku „Relacije“ da biste ispitali relacije u bazi podataka. Da biste pokrenuli alatku „Relacije“, na kartici Alatke baze podataka u grupi Prikazivanje/Skrivanje kliknite na dugme Relacije.

Više informacija o planiranju i pokretanju upita za brisanje potražite u članku Brisanje jednog ili više zapisa iz baze podataka pomoću upita za brisanje.

  • Kreirajte upit, kao što je upit za izdvajanje ili upit za jedinstvene vrednosti i dodajte ili menjajte bilo koje kriterijume dok vam upit ne vrati isključivo podatke koje želite da izbrišete.
  • Konvertujte taj upit u upit za brisanje, a zatim pokrenite upit za brisanje da biste izbrisali neželjene podatke.

 Važno   Rezultate upita za brisanje ne možete da opozovete. Zbog toga bi trebalo da napravite rezervni kopiju baze podataka pre nego što pokrenete upit za brisanje. Više informacija o pravljenju rezervne kopije baze podataka potražite u odeljku Kako da napravite rezervnu kopiju baze podataka u gornjem delu ovog članka.

Sledeći koraci objašnjavaju kako da kreirate upit za izdvajanje, kako da ga konvertujete u upit za brisanje i kako da ga pokrenete da biste izbrisali podatke.

Kreiranje upita za izdvajanje

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

Otvara se dizajner upita i pojaviće se dijalog Prikazivanje tabele.

  1. Izaberite tabelu na strani „jedan“ relacije, kliknite na dugme Dodaj, a zatim kliknite na dugme Zatvori.

Tabela se pojavljuje kao prozor u gornjem delu koordinatne mreže za dizajn upita. U prozoru su navedena sva polja u tabeli. Na sledećoj slici prikazana je tipična tabela u dizajneru upita.

Tabela u dizajneru upita

  1. Dvaput kliknite na zvezdicu (*) da biste dodali sva polja iz tabele u koordinatnu mrežu za dizajn.

Dodavanjem svih polja tabele omogućava se da upit za brisanje iz tabele izbriše celokupne zapise (redove).

  1. Opcionalno, dodajte kolonu koja dozvoljava unos kriterijuma.

Na primer, pretpostavimo da je kupac prestao sa radom i da je potrebno da izbrišete sve neobrađene porudžbine za tog kupca. Da biste pronašli samo te zapise, u koordinatnu mrežu za dizajn dodajte polja „ID kupca“ i „Datum porudžbine“.

  1. Ukoliko ste sledili prethodni korak, unesite kriterijume u red Kriterijumi koordinatne mreže za dizajn.

Kriterijume morate da koristite da biste vratili isključivo zapise koje želite da izbrišete. U suprotnom, upit za brisanje će izbrisati sve zapise u tabeli. Da biste nastavili sa primerom iz prethodnog koraka, unesite ID broj kupca koji je prestao sa radom i datum kada su njegove porudžbine prestale da budu važeće.

Više informacija o tome kako da koristite kriterijume potražite u članku Brisanje jednog ili više zapisa iz baze podataka pomoću upita za brisanje

  1. Ukoliko ste sledili prethodni korak, opozovite izbor Prikaži za svako polje kriterijuma.
  2. Na kartici Dizajn, u grupi Rezultati izaberite stavku Pokreni.

Proverite da li upit vraća zapise koje želite da izbrišete.

  1. Ostavite upit otvoren, a zatim pređite na sledeće korake.

Kako da konvertujete upit za izdvajanje u upit za brisanje i da ga pokrenete da biste izbrisali podatke

  1. Izaberite stavku Prikaz dizajna da biste se iz lista sa podacima prebacili u dizajner upita.
  2. Na kartici Dizajn, u grupi Tip upita izaberite stavku Izbriši.

Access menja upit za ažuriranje u upit za brisanje, skriva red Prikaži u donjem odeljku koordinatne mreže za dizajn i dodaje red Izbriši.

Proverite da li red Izbriši u koloni * (sva polja) prikazuje reč From. Reč Where bi trebalo da se pojavi u svim kolonama sa kriterijumima.

  1. Proverite da li želite da izbrišete podatke, a zatim kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli podatke u prikazu lista sa podacima.

Access od vas traži da potvrdite brisanje.

Kliknite na dugme Da da biste izbrisali podatke.

Kako da sakrijete poruku o potvrdi

Primenite sledeće korake ukoliko ne želite da vidite poruku o potvrdi svaki put kada pokrenete upit za brisanje ili neki drugi radni upit.

  • Kliknite na dugme Microsoft Office Slika dugmeta, a zatim izaberite stavku Opcije programa Access.

Pojaviće se dijalog Access opcije.

  • Izaberite stavku Više opcija, a zatim u odeljku Uređivanje pod stavkom Potvrdi opozovite izbor Radni upiti.
  • Kliknite na dugme U redu da biste zatvorili dijalog Access opcije.

Vrh odeljka

Sprečavanje korisnika da unose duplirane vrednosti

Korisnike možete da sprečite da unose duplirane podatke primenom sledećih nekoliko pravila:

  • Postavite polje tako da sadrži isključivo jedinstvene vrednosti.    Da biste primenili ovo pravilo, postupite na neki od sledećih načina:
    • Označite polje kao polje primarnog ključa. Ovo možete da uradite samo ukoliko tabela ne sadrži primarni ključ. Da biste postavili polje kao primarni ključ, otvorite tabelu u prikazu dizajna, kliknite desnim tasterom miša na ime polja, a zatim izaberite stavku Primarni ključSlika dugmeta. Polje primarnog ključa prihvata isključivo jedinstvene vrednosti i obavestiće korisnike ukoliko su uneli dupliranu vrednost.
    • Ukoliko tabela već sadrži primarni ključ, postavite svojstvo polja Indeksirano na Da (Bez duplikata) u prikazu dizajna tabele. Ovo svojstvo sprečava da polje prihvati istu vrednost za više od jednog zapisa. Imajte u vidu da u nekim slučajevima – kao što je to kada polja sadrže informacije o imenu i gradu – morate da prihvatite duplikate.
  • Odredite da kombinacija vrednosti u dva ili više polja mora da bude jedinstvena za svako polje.    Na primer, pretpostavimo da imate tabelu podataka o kontaktima. Kao primarni ključ za tabelu možete da označite kombinaciju polja, kao što su „Ime kontakta“, „Adresa“ i „Grad“.

Ovaj metod je delotvoran zato što je malo verovatno da će dva kontakta sa istim imenom imati istu adresu i biti iz istog grada.

Da biste kreirali primarni ključ za više polja, pratite sledeće korake:

  1. Otvorite tabelu u prikazu dizajna.
  2. Kliknite na odabirač reda s leve strane prvog polja da biste izabrali ceo red.
  3. Istovremeno pritisnite taster CTRL dok birate odabirač reda za sva ostala polja koja želite da obuhvatite primarnim ključem.
  4. Kliknite desnim tasterom miša, a zatim u priručnom meniju izaberite stavku Primarni ključSlika dugmeta.

Ovaj korak postavlja svojstvo Indeksirano svakog polja u primarnom ključu na Da (Duplikati u redu) tako da, na primer, možete da unesete isto ime, istu adresu ili isti grad u više zapisa, ali identičnu kombinaciju imena, adrese i grada možete da unesete samo u jedan zapis. Na primer, možete da imate dva kontakta koji imaju isto ime Žarko Baljević i žive u Manovoj ulici 2345, ali ne mogu obojica živeti u Beogradu.

Vrh odeljka


Vrh stranice Vrh stranice

Pronalaženje, uređivanje, skrivanje i brisanje dupliranih podataka u više tabela

Sledeći odeljci sadrže objašnjenja o nekim od načina za pronalaženje, uređivanje, skrivanje i brisanje dupliranih zapisa koji postoje u više tabela. Obično se dešava da se podaci u dve ili više tabela preklapaju kada pokušate da jednu bazu podataka integrišete u drugu.



Kako da omogućite uporedni prikaz duplikata koji postoje u dve tabele

Često se dešava da na kraju imate dve tabele u istoj bazi podataka koje sadrže duplirane podatke ili podatke koji se preklapaju. Na primer, pretpostavimo da imate tabele „Klijenti“ i „Kupci“:

Tabela „Klijenti“    

Ime Adresa Grad Telefon Faks
Baldwin Museum of Science Manova ulica 1234 Njujork (011) 012-2122 (011) 012-3123
Blue Yonder Airlines Prva ulica 1052 Boston (014) 012-2123 (014) 012-2124
Coho Winery Avenija Lala 3122 Sijetl (099) 012-2124 (099) 012-2125
Contoso Pharmaceuticals Bulevar Kolibrija 1 London (071) 012-2125 (071) 012-2126
Fourth Coffee Simićeva ulica 1122 Meksiko Siti (017) 012-2126 (017) 012-2127
Consolidated Messenger Ulica Lala 3122 Sijetl (099) 012-2125 (099) 012-2129
Graphic Design Institute Ulica Velika 67 Tampa (095) 012-2128 (095) 012-2128
Litware, Inc. Mirkov put 3 Portland (081) 012-2129 (081) 012-2110
Tailspin Toys Mirkov put 4 Portland (081) 012-2233 (081) 012-2239

Tabela „Kupci“    

Ime kompanije Ime kontakta Adresa Grad Poštanski broj Telefon
Baldwin Museum of Science Jordan Branković Manova ulica 1234 Njujork 12345 (011) 012-2122
Blue Yonder Airlines Vlajko Helić Prva ulica 1052 Boston 23456 (014) 012-2123
Coho Winery Tica Gavrilo Avenija Lala 3122 Sijetl 34567 (099) 012-2124
Contoso Pharmaceuticals Žarko Baljević Bulevar Kolibrija 1 London NS1 EW2 (071) 012-2125
Fourth Coffee Đurađ Prica Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2126
Adventure Works Kristina Hujović Pere Maljevića 3122 Sijetl 34567 (099) 012-2125
Humongous Insurance Stefan Ratković Ulica Velika 67 Tampa 01234 (095) 012-2128
Trey Research Dana Brković Nosićevo sokače 2 Portland 43210 (081) 012-2129
Fabrikam, Inc. Jadranko Avramović Mate Markovića 1009 Sijetl 56789 (099) 012-2233

Obratite pažnju na to da u ovom slučaju pojedinačne tabele ne sadrže duplirane zapise, ali polja iz obe tabele sadrže neke vrednosti koje se preklapaju, kao što su podaci u polju „Ime“ u tabeli „Klijenti“ i podaci u polju „Ime kompanije“ u tabeli „Kupci“.

Niste uvek u mogućnosti da integrišete podatke u svaku tabelu tako što ćete da objedinite dve tabele. Tabela „Klijenti“ možda sadrži najnovije podatke za neke kupce, ali tabela „Kupci“ možda ima najnovije podatke za neke druge korisnike. Najbolji metod je da pregledate sadržaj obe tabele, a zatim da odlučite koje podatke da zadržite, a koje da izbrišete.

Da biste spojili zapise iz obe tabele, kreirajte upit za združivanje. Upit će postaviti duplirane podatke blizu jedan drugog da bi vam olakšao da ih pregledate.

 Napomena   Podatke koje vraća upit za združivanje ne možete da uređujete niti da ih izbrišete. Da biste podatke uredili ili izbrisali, otvorite osnovne tabele u prikazu lista sa podacima.

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

Access kreira novi upit. Pojaviće se dijalog Prikazivanje tabele.

  1. Zatvorite dijalog Prikazivanje tabele bez dodavanja bilo kakvih tabela ili upita u koordinatnu mrežu za dizajn.
  2. Kliknite desnim tasterom miša na karticu dokumenta za upit, a zatim izaberite stavku SQL prikaz.
  3. Ukoliko ste koristili prethodne tabele kao primer, nalepite sledeći SQL izraz u prozor. Ukoliko ste koristili sopstvene podatke, koristite sledeći izraz kao vodič. Koristite odredbe SELECT, UNION ALL SELECT i ORDER BY kao što je to prikazano, ali zamenite imena polja i tabela svojim podacima.

SELECT [Ime kompanije], [Adresa], [Grad], [Telefon], FROM [Kupci]
UNION ALL SELECT [Ime], [Adresa], [Grad], [Telefon], FROM [Klijenti]
ORDER BY [Ime kompanije];

Prva odredba SELECT vraća zapise iz tabele „Kupci“, a druga zapise iz tabele „Klijenti“. Odredba UNION ALL udružuje sve zapise iz obe tabele. Odredba ORDER BY sortira zapise tako da se duplirani zapisi postavljaju zajedno da bi se lakše pregledali.

 Napomena   Svaka odredba SELECT mora da vrati isti broj polja, i to po istom redosledu. Odgovarajuća polja su potrebna da bi se imali kompatibilni tipovi podataka, ali postoji jedan izuzetak: polja „Broj“ i „Tekst“ možete da koristite kao odgovarajuća. Takođe, imajte u vidu da polje može da ima različito ime.

  1. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli rezultate u prikazu lista sa podacima.

Ukoliko ste koristili zapise iz gorenavedenih tabela, prikazaće se 18 zapisa – svih 9 zapisa iz tabele „Kupci“ i svih 9 zapisa iz tabele „Klijenti“.

Sačuvajte upit, a zatim zatvorite prikaz. Ovaj upit ćete koristiti u sledećem odeljku.

Vrh odeljka

Kako da omogućite prikaz isključivo jednog zapisa kada duplikati postoje u dve tabele

Ponekad će vam biti potrebno da vidite isključivo jedinstvene zapise iz dve slične tabele. Ukoliko zapis postoji u obe tabele, možete da obuhvatite zapis iz prve tabele i da ignorišete odgovarajući zapis iz druge tabele.

Access tretira zapise iz različitih tabela kao duplikate samo ukoliko se vrednosti u izabranim poljima podudaraju. Na primer, ukoliko upit sadrži polja „Ime kompanije“, „Grad“, „Adresa“, „Telefon“ i „Faks“, vrednosti u svih pet polja moraju da se podudaraju da bi program Access tretirao zapis kao duplikat.

Koraci u ovom odeljku objašnjavaju kako da izmenite upit iz prethodnog odeljka da biste omogućili prikaz svih zapisa iz tabele „Kupci“ i samo jedinstvene zapise iz tabele „Klijenti“.

 Napomena   Podatke koje vraća upit za združivanje ne možete da uređujete. Da biste podatke uredili ili izbrisali, otvorite osnovne tabele u prikazu lista sa podacima.

Kako da izmenite upit

  1. Otvorite upit koji ste kreirali u prethodnom odeljku.
  2. Na kartici dokumenta za upit izaberite stavku SQL prikaz da biste videli SQL izraz.
  3. Izbrišite polja [Telefon] iz obe odredbe SELECT.
  4. Izbrišite reč ALL koja sledi posle reči UNION. Ovo će navesti upit da ignoriše duplirane zapise iz tabele „Klijenti“. SQL izraz će izgledati ovako:

SELECT [Ime kompanije], [Adresa], [Grad], FROM [Kupci]
UNION SELECT [Ime], [Adresa], [Grad], FROM [Klijenti]
ORDER BY [Ime kompanije];

  1. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli rezultate u prikazu lista sa podacima.

Ukoliko ste koristili primer podataka u prethodnom odeljku, upit će umesto 18 vratiti 14 zapisa.

Vrh odeljka

Kako da omogućite prikaz isključivo dupliranih zapisa koji su pronađeni u obe tabele

Unutrašnje spajanje koristite kada treba da izvršite upit isključivo za vrednosti iz dve tabele koje se podudaraju. Ukoliko ste od nedavno počeli da koristite Access, unutrašnje spajanje je operacija koja povezuje redove u dve ili više tabela isključivo ukoliko se vrednosti u spojenim poljima podudaraju.

Unutrašnje spajanje kreirate građenjem upita za izdvajanje koji obuhvata obe tabele, a zatim kreirate relaciju između polja koja sadrže duplirane vrednosti. Access podrazumevano kreira unutrašnje spajanje kada kreirate relaciju.

 Napomena   Niste u mogućnosti da uredite polja ili redove koji su vraćeni upitom za izdvajanje koji sadrži unutrašnje spajanje. Ukoliko želite da uredite podatke, otvorite osnovne tabele i promenite vrednosti u svakoj od njih.

Kako da kreirate upit koji sadrži unutrašnje spajanje

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

  1. U dijalogu Prikazivanje tabele dvaput kliknite na tabelu „Kupci“ i tabelu „Klijenti“, a zatim kliknite na dugme Zatvori da biste zatvorili dijalog.
  2. Identifikujte polja koja sadrže vrednosti koje se podudaraju u dupliranim zapisima. Ukoliko koristite probne tabele, polje „Ime kompanije“ u tabeli „Kupci“ odgovara polju „Ime“ u tabeli „Klijenti“.
  3. Prevucite polje „Ime kompanije“ iz prve tabele u polje „Ime“ u drugoj tabeli. Access povezuje polja linijom.

Linija između tabela koja označava da su tabele „Kupci“ i „Klijenti“ u relaciji na osnovu imena kupaca

Upit podrazumevano kreira unutrašnje spajanje između dve tabele. Unutrašnje spajanje bira isključivo one zapise u kojima se polje „Ime kompanije“ podudara sa poljem „Ime“.

  1. Dvaput kliknite na polje Ime kompanije da biste ga dodali u koordinatnu mrežu za dizajn upita. Ovo polje će vam pomoći da identifikujete zapise u prikazu lista sa podacima.
  2. Dvaput kliknite na ostala polja iz tabela „Klijenti“ i „Kupci“ koja želite da dodate u koordinatnu mrežu za dizajn upita. U ovom slučaju, dodajte polje „Telefon“ iz tabele „Kupci“ i polje „Telefon“ iz tabele „Klijenti“.
  3. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit i videli rezultate u prikazu lista sa podacima. Upit vraća pet zapisa, po jedan za svakog kupca sa zapisom u obe tabele.
Ime kompanije Telefon (Kupci) Telefon (Klijenti)
Baldwin Museum of Science (011) 012-2122 (011) 012-3123
Blue Yonder Airlines (014) 012-2123 (014) 012-2124
Coho Winery (099) 012-2124 (099) 012-2124
Contoso Pharmaceuticals (071) 012-2125 (071) 012-2125
Fourth Coffee (017) 012-2126 (017) 012-2126

Vrh odeljka

Kako da omogućite prikaz isključivo zapisa iz jedne tabele koji nemaju podudarni zapis u drugoj tabeli

Nastavljajući scenario u kome tabele „Kupci“ i „Klijenti“ imaju duplirane podatke, sada ćete shvatiti da šta treba da uradite da biste u tabeli „Kupci“ videli one zapise koji nemaju duplirane zapise u tabeli „Klijenti“. Pomoću ovoga možete da donesete odluke o određenim kupcima na osnovu sadržaja isključivo tabele „Kupci“ pre nego što preduzmete korake da biste konsolidovali dve tabele.

Kreiranjem upita za pronalaženje nepodudaranja možete da vidite isključivo zapise u tabeli „Kupci“ koji nemaju podudarane zapise u tabeli „Klijenti“. Ukoliko koristite probne podatke, ovaj tip upita će vratiti sve zapise iz tabele „Kupci“ koji nemaju podudaranje u tabeli „Klijenti“.

 Napomena   U mogućnosti da uređujete vrednosti polja i da izbrišete zapise kada je ovaj upit u prikazu lista sa podacima.

Kako da kreirate upit za pronalaženje nepodudaranja

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Čarobnjak za upite.

Slika glavne trake programa Access

  1. U dijalogu Novi upit izaberite opciju Čarobnjak za upit za pronalaženje nepodudaranja, a zatim kliknite na dugme U redu.
  2. Izaberite tabelu „Kupci“ – ona sadrži tražene podatke. Kliknite na dugme Dalje.
  3. Izaberite tabelu „Klijenti“ – to je tabela sa kojim želite da uporedite tabelu „Kupci“. Kliknite na dugme Dalje.
  4. Izaberite polje „Ime kompanije“ u tabeli „Kupci“, izaberite polje „Ime“ u tabeli „Klijenti“, a zatim kliknite na dugme <=>. Ovo će spojiti tabele na osnovu imena kupaca. Kliknite na dugme Dalje.
  5. Izaberite polja koja želite da budu prikazana. U ovom slučaju dodajte polja „Ime kompanije“, „Adresa“, „Grad“ i „Telefon“. Kliknite na dugme Dalje.
  6. Upišite ime za upit i kliknite na dugme Završi da biste zapise videli u prikazu radnog lista. Ukoliko ste koristili probne tabele, upit će vratiti četiri zapisa – u ovom slučaju, zapise iz tabele „Kupci“ koji nemaju zapis koji se preklapa u tabeli „Klijenti“.
Ime kompanije Adresa Grad Telefon
Adventure Works Pere Maljevića 3122 Sijetl (099) 012-2125
Humongous Insurance Ulica Velika 67 Tampa (095) 012-2128
Trey Research Nosićevo sokače 2 Portland (081) 012-2129
Fabrikam, Inc. Mate Markovića 1009 Sijetl (099) 012-2233

Vrh odeljka

Kako da izbrišete duplirane zapise iz jedne tabele i da objedinite preostale zapise u drugu tabelu

Nakon što ste pregledali duplirane podatke u sličnim tabelama, možete da ih izbrišete i da objedinite preostale podatke u jednu tabelu. Ovaj proces prati sledeće opšte korake:

  • Opcionalno, u tabeli koju želite da izbrišete ažurirajte podatke koje želite da objedinite. Objašnjenje kako da ažurirate podatke ne pripada temi ovog članka.

Više informacija o tome kako da ažurirate podatke potražite u članku Ažuriranje podataka u bazi podataka.

  • Opcionalno, proverite da li tabela koju želite da izbrišete ima relacije sa ostalim tabelama u bazi podataka. Ukoliko relacija postoji, obično ćete prvo nju da izbrišete, a zatim da uspostavite novu relaciju sa drugom tabelom (sa tabelom koja sadrži objedinjene podatke). Međutim, morate da proverite da li se vrednosti primarnog ključa u novoj tabeli podudaraju sa vrednostima primarnog ključa u ostalim tabelama.
  • Kreirajte upit za brisanje koji koristi svojstvo Jedinstveni zapisi da biste pronašli i izbrisali podudarne zapise. Pri ovome morate da pazite da ne poremetite relacije među tabelama u bazi podataka. Na primer, pretpostavimo da želite da premestite neke jedinstvene zapise iz tabele „Klijenti“ u tabelu „Kupci“, a zatim da izbrišete tabelu „Klijenti“. Ukoliko je tabela „Klijenti“ u relaciji sa nekim drugim tabelama u bazi podataka, morate da preduzmete korake da biste obezbedili da tabela „Kupci“ prihvati te relacije. Potpuno objašnjenje relacija ne pripada temi ovog članka.

Više informacija potražite u članku Kreiranje, uređivanje ili brisanje relacije.

  • Kreirajte upit za dodavanje da biste preostale zapise iz tabele koju želite da izbrišete dodali u tabelu koju želite da zadržite. Pri tome ćete možda morati da u tabelu koju želite da zadržite dodate polje primarnog ključa i vrednosti za dodate podatke.
  • Kako da izbrišete neželjenu tabelu

Koraci u ovom odeljku objašnjavaju kako da kreirate i koristite upite za brisanje i za dodavanje i kako da izbrišete tabelu. U koracima se koriste tabele „Kupci“ i „Klijenti“.

Tabela „Kupci“    

Ime kompanije Ime kontakta Adresa Grad Poštanski broj Telefon
Baldwin Museum of Science Jordan Branković Manova ulica 1234 Njujork 12345 (011) 012-2122
Blue Yonder Airlines Vlajko Helić Prva ulica 1052 Boston 23456 (014) 012-2123
Coho Winery Tica Gavrilo Avenija Lala 3122 Sijetl 34567 (099) 012-2124
Contoso Pharmaceuticals Žarko Baljević Bulevar Kolibrija 1 London NS1 EW2 (071) 012-2125
Fourth Coffee Đurađ Prica Simićeva ulica 1122 Meksiko Siti 56789 (017) 012-2126
Adventure Works Kristina Hujović Pere Maljevića 3122 Sijetl 34567 (099) 012-2125
Humongous Insurance Stefan Ratković Ulica Velika 67 Tampa 01234 (095) 012-2128
Trey Research Dana Brković Nosićevo sokače 2 Portland 43210 (081) 012-2129
Fabrikam, Inc. Jadranko Avramović Mate Markovića 1009 Sijetl 56789 (099) 012-2233

Tabela „Klijenti“    

Ime Adresa Grad Telefon Faks
Baldwin Museum of Science Manova ulica 1234 Njujork (011) 012-2122 (011) 012-3123
Blue Yonder Airlines Prva ulica 1052 Boston (014) 012-2123 (014) 012-2124
Coho Winery Avenija Lala 3122 Sijetl (099) 012-2124 (099) 012-2125
Contoso Pharmaceuticals Bulevar Kolibrija 1 London (071) 012-2125 (071) 012-2126
Fourth Coffee Simićeva ulica 1122 Meksiko Siti (017) 012-2126 (017) 012-2127
Consolidated Messenger Ulica Lala 3122 Sijetl (099) 012-0170 (099) 012-0171
Graphic Design Institute Ulica Velika 67 Tampa (095) 012-2128 (095) 012-2128
Litware, Inc. Mirkov put 3 Portland (081) 012-0192 (081) 012-0193
Tailspin Toys Mirkov put 4 Portland (081) 012-2233 (081) 012-2239

Ukoliko želite da koristite ove tabele u bazi podataka, pogledajte odeljak Pripremanje probnih podataka na početku ovog članka. Za potrebe ovog vežbanja pretpostavimo da tabela „Kupci“ sadrži najnovije informacije – stoga, želite da izbrišete zapise iz tabele „Klijenti“ koji se podudaraju, a zatim da objedinite preostale zapise iz tabele „Klijenti“ u tabelu „Kupci“.

Kako da izbrišete neželjene podatke

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

  1. U dijalogu Prikazivanje tabele dvaput kliknite na tabelu „Kupci“ i tabelu „Klijenti“, a zatim zatvorite dijalog.
  2. Povežite dve tabele prevlačenjem polja „Ime kompanije“ iz tabele „Kupci“ u polje „Ime“ u tabeli „Klijenti“.
  3. Kliknite desnim tasterom miša na praznu oblast u gornjoj polovini prozora, a zatim izaberite stavku Svojstva. Postavite vrednost svojstva Jedinstveni zapisi na Da.

Povezivanjem dve tabele i postavljanjem svojstva Jedinstveni zapisi za upit na Da izbegavate da se pojavi poruka Nije bilo moguće brisanje iz navedenih tabela koja bi se inače pojavila kada pokrenete upit.

  1. Na kartici Dizajn, u grupi Tip upita izaberite stavku Izbriši.
  1. Prevucite zvezdicu (*) iz tabele „Kupci“ u red Polje u prvoj koloni koordinatne mreže za dizajn upita.

Zvezdica u oknu „Lista polja“ predstavlja sva polja u tabeli

U redu Tabela se pojavljuje vrednost Klijenti, a u redu Izbriši vrednost From. Ovo znači da će upit izbrisati redove iz tabele „Klijenti“.

  1. Sada treba da navedete koje zapise upit treba da izbriše. Ukoliko koristite probne tabele, ovo možete da uradite tako što ćete da izbrišete zapise u kojima se vrednosti u poljima „Ime“, „Adresa“ i „Grad“ iz tabele „Klijenti“ podudaraju sa odgovarajućim poljima u tabeli „Kupci“.

Prevucite polje „Ime“ iz tabele „Klijenti“ u prvu praznu ćeliju reda Polje koordinatne mreže za dizajn upita. Isto to uradite i sa poljima „Adresa“ i „Grad“ iz tabele „Klijenti“.

  1. Ukoliko koristite probne tabele, u red Kriterijumi za polje „Ime“ upišite [Kupci].[Ime kompanije]. U red Kriterijumi za polje „Adresa“ upišite [Kupci].[Adresa]. U red Kriterijumi za polje „Grad“ upišite [Kupci].[Grad]. Koordinatna mreža za dizajn upita bi trebalo da izgleda ovako:

Polja i kriterijumi koji određuju duplirane zapise

Kada pokrenete upit, on će izbrisati sve zapise koji zadovoljavaju kriterijume – zapise koji imaju vrednosti koje se podudaraju u tri polja u svakoj tabeli.

  1. Kliknite na dugme PrikazSlika dugmeta da biste pregledali zapise koji će biti izbrisani kada pokrenete upit. Videćete pet dupliranih zapisa iz tabele „Klijenti“.
  2. Kliknite na dugme PokreniSlika dugmeta da biste pokrenuli upit. Kada budete upitani da li želite da potvrdite brisanje, kliknite na dugme Da.
  3. Pređite na sledeće korake da biste kreirali upit za dodavanje.

Kako da dodate preostale podatke

  1. Na kartici Kreiranje, u grupi Ostalo izaberite stavku Dizajn upita.

Slika glavne trake programa Access

  1. U dijalogu Prikazivanje tabele dvaput kliknite na izvornu tabelu, zatim dvaput kliknite na tabelu koja sadrži zapise koje želite da dodate, a potom kliknite na dugme Zatvori. Ukoliko koristite probne podatke, dvaput kliknite na tabelu „Klijenti“.
  2. Na kartici Dizajn, u grupi Tip upita izaberite stavku Dodaj.
  1. U dijalogu Dodavanje, na listi Ime tabele izaberite ciljnu tabelu (tabelu kojoj želite da dodate podatke). Ukoliko koristite probne tabele, izaberite tabelu „Kupci“, a zatim kliknite na dugme Zatvori.
  2. Premestite polja iz izvorne tabele koja želite da dodate u red Polje koordinatne mreže za dizajn.

 Važno   Premestite isključivo ona polja za koja postoji odgovarajuće polje u ciljnoj tabeli.

Ukoliko koristite probne podatke, premestite polja „Ime“, Adresa“ i „Telefon“.

  1. Kliknite na red Dodaj u u svakom polju i izaberite ime odgovarajućeg polja u ciljnoj tabeli. Ukoliko koristite probne podatke, izaberite polja „Ime kupca“, „Adresa“ i „Telefon“.
  2. Pošto želite da u tabelu „Kupci“ dodate sve zapise iz tabele „Klijenti“, nije neophodno da navedete kriterijume. Kliknite na dugme PrikazSlika dugmeta da biste pregledali zapise koji će biti dodati u tabelu „Kupci“ kada pokrenete upit.
  3. Prikaz sačuvajte i zatvorite.
  4. Pronađite upit za dodavanje i dvaput kliknite na njega. Kliknite na dugme Da da biste potvrdili operaciju dodavanja.

PrikažiNe želim da vidim poruku o potvrdi svaki put kada pokrenem ovaj upit

  • Kliknite na dugme Microsoft Office Slika dugmeta, a zatim izaberite stavku Opcije programa Access.
  • U dijalogu Access opcije izaberite stavku Uređivanje.
  • U odeljku Opšte uređivanje pod stavkom Potvrdi opozovite izbor Radni upiti.

Kako da izbrišete tabelu

  1. Proverite da li imate potrebne dozvole za brisanje tabela iz baze podataka. Uverite se da baza podataka nije samo za čitanje i da tabelu nije otvorio neki drugi korisnik.
  2. U oknu za navigaciju kliknite na tabelu koju želite da izbrišete.
  3. Pritisnite taster DELETE, a zatim kliknite na dugme Da da biste potvrdili da želite da izbrišete tabelu.

 Napomena   Brisanje tabele može u potpunosti ili delimično da naruši funkcionisanje baze podataka. Iz tog razloga, morate da planirate brisanje da biste sačuvali funkcionalnost baze podataka i uvek treba da napravite rezervnu kopiju baze podataka pre nego što izbrišete podatke ili druge komponente.

Više informacija o brisanju podataka potražite u članku Brisanje jednog ili više zapisa iz baze podataka.

Vrh odeljka

Kako da vidite isključivo jedinstvene zapise dok pregledate podatke iz tabela u relaciji

Upit koji prikuplja podatke iz dve tabele u relaciji može da prikaže zapise u kojima izgleda kao da se sva polja podudaraju. Međutim, ukoliko pregledate tabele, možda ćete otkriti da tabele u stvari ne sadrže duplirane zapise. Taj problem nastaje kada upit ne sadrži neka polja (kao što je to polje primarnog ključa) koja mogu jedinstveno da identifikuju svaki zapis. Kada je scenario takav, nećete želeti da izbrišete zapise, ali ćete moći da preduzmete radnju kojom ćete sakriti one zapise koji izgledaju kao duplikati.

Na primer, pretpostavimo da koristite upit da biste iz dve tabele prikupili podatke o porudžbinama kupaca i da ste se postarali da zaposleni na vreme popune porudžbine. Kupci mogu jednom porudžbinom da poruče više proizvoda, tako da svaki proizvod postaje poseban zapis (tj. red) u osnovnim tabelama. Pošto je porudžbina poslata u jednom danu, a zatim otpremljena takođe u jednom danu, zapisi za datu porudžbinu mogu da sadrže veliki broj dupliranih datuma, kao što je to prikazano na sledećoj slici:

Polja sa jedinstvenim vrednostima uklonjena iz upita o završetku porudžbine

Pošto znate da porudžbine stižu određenog dana i pošto ih otpremate određenog dana, potrebno je da vidite samo jedan zapis (tj. jedan red) za svaku porudžbinu. Da biste omogućili prikaz jedinstvenih zapisa iz tabela koje sadrže podatke o porudžbinama, postavite svojstvo upita Jedinstveni zapisi na Da. Kada je svojstvo podešeno na Da, upit pretražuje sve redove u tabelama i kada pronađe redove koji se podudaraju (a ne samo polja) iz skupa rezultata isključuje sve takve duplirane redove, osim jednog.

Kako da postavite svojstvo „Jedinstveni zapisi“ na „Da“

  1. Kada je upit otvoren u prikazu dizajna, pritisnite taster F4 da biste omogućili prikaz lista sa svojstvima.
  2. U listu sa svojstvima postavite svojstvo Jedinstveni zapisi na Da , a zatim zatvorite list sa svojstvima.

Prikazivanje lista sa svojstvima za upit

Tokom rada imajte u vidu da kada je svojstvo Jedinstveni zapisi postavljeno na Da, upit poredi cele redove i redovi u svim tabelama moraju da se podudaraju pre nego što upit isključi bilo kakve podatke. Takođe, imajte u vidu da postavku Jedinstveni zapisi možete da koristite samo onda kada upit obuhvata dve ili više tabela.

Kada se prebacite na prikaz lista sa podacima, videćete samo po jedan zapis za svaku porudžbinu.

Jedan zapis po porudžbini iz tabele „Porudžbine“

Takođe imajte u vidu da kada svojstvo Jedinstveni zapisi postavite na Da, i dalje možete da vidite ono što izgleda kao duplirani zapis. Da nastavimo sa prethodnim primerom, možda ćete i dalje videti zapise u kojima se poklapaju datumi porudžbine i datumi otpreme, i to na sledeći način:

Prikaz i dalje obuhvata duplirane zapise

Ovo se dešava kada istog dana primite dve različite porudžbine, a zatim ih istog dana otpremite. Postavljanje svojstva Jedinstvene vrednosti na Da ne skriva takve zapise iz rezultata upita zato što oni zapravo nisu duplikati u osnovnim tabelama.

Ukoliko želite da vidite samo jedno pojavljivanje takvih zapisa (tj. jedan zapis za porudžbinu po danu), potrebno je da postavite svojstvo upita Jedinstvene vrednosti na Da. Kada je svojstvo Jedinstvene vrednosti postavljeno na Da, upit ne pregleda osnovne tabele da bi u njima našao duplikate. Umesto toga, on pregleda vrednosti obuhvaćenih polja i ako se polja podudaraju u dva zapisa, upit će u prikazu sakriti jedan od njih.

Svojstvo Jedinstvene vrednosti postavljate na isti način kao i svojstvo Jedinstveni zapisi – omogućite prikaz lista sa svojstvima za upit i promenite postavku u Da. U listu sa svojstvima, polje za svojstvo Jedinstvene vrednosti se nalazi iznad polja Jedinstveni zapisi.

Svojstvo „Jedinstvene vrednosti“ je postavljeno na „Da“

Da nastavimo sa prethodnim primerom, sada ćete videti isključivo datume kada je primljena, odnosno otpremljena jedna ili više porudžbina. Nećete videti po jedan zapis za svaku porudžbinu.

Datumi kada su porudžbine primljene i otpremljene

 Napomena   Pošto svojstvo Jedinstveni zapisi postavljeno na Da operiše u redovima tabele koji pružaju podatke za upit, a svojstvo Jedinstvene vrednosti postavljeno na Da operiše samo u poljima u upitu, ne možete da koristite oba svojstva zajedno. Ukoliko jedno svojstvo postavite na Da, Access će automatski postaviti drugo na Ne. Međutim, oba svojstva mogu da budu postavljena na Ne da bi se vratili svi zapisi.

U sledećoj tabeli nalazi se rezime pomoću koga možete da odaberete postavke za svojstva Jedinstveni zapisi i Jedinstvene vrednosti u upitu.

Ukoliko se upit zasniva na… A vi želite da vidite… Postavite svojstvo… Rezultat…
Dve ili više tabela, ali sva polja upita su iz jedne tabele Jedinstvene zapise iz tabele (sva polja u tabeli moraju da se podudaraju u dva zapisa da bi se smatrala duplikatima) Jedinstveni zapisi na Da. (Access automatski postavlja svojstvo Jedinstvene vrednosti na Ne). Ukoliko tabela sadrži duplirane zapise, upit ignoriše duplikate. Međutim, rezultati upita mogu i dalje da prikazuju zapise u kojima se sva polja podudaraju, ukoliko upit ne obuhvata polje koje jedinstveno identifikuje zapise.
Jednoj ili više tabela Jedinstvene zapise u prikazu upita „List sa podacima“ (sva polja u prikazu lista sa podacima moraju da se podudaraju u dva zapisa da bi se smatrala duplikatima) Jedinstvene vrednosti na Da. (Access automatski postavlja svojstvo Jedinstveni zapisi na Ne). Upit isključuje duplirane zapise (u kojima se sva polja podudaraju) iz prikaza lista sa podacima. Međutim, imajte u vidu da možda nećete videti sve jedinstvene zapise iz osnovne tabele.
Jednoj ili više tabela Sve redove Jedinstvene vrednosti na Ne i svojstvo Jedinstveni zapisi na Ne. Videćete sve jedinstvene i duplirane zapise iz obe tabele.

Vrh odeljka

Kako da vidite određeni zapis ili da sumirate duplirane podatke u tabelama u relaciji

Dok pregledate duplirane podatke u tabelama u relaciji, možda ćete želeti da vidite tačno određeni zapis iz skupa duplikata ili ćete hteti da sumirate duplirane podatke pomoću funkcija Count, Sum ili nekih drugih agregatnih funkcija.

Slično kao i u scenariju koji je opisan u prethodnom odeljku, može da se dogodi da tabele u stvari nemaju duplirane podatke, ali kada pregledate podatke iz dve tabele koje stoje u relaciji „jedan-prema-više“ (kao što su tabele „Porudžbine“ i „Detalji porudžbine“) možda ćete naći nekoliko zapisa u kojima se podudara više polja. Na primer, zaposleni je možda primio više porudžbina od istog kupca ili je istog dana prodao isti proizvod na osnovu nekoliko različitih porudžbina, itd. Ukoliko želite da pronađete podatke koji će odgovoriti na upite kao što je sledeći, potrebno je da sumirate podatke, a ne da izbrišete duplirane podatke.

  • Pronađite ukupnu količinu svakog proizvoda koji je prodao svaki od zaposlenih.
  • Izbrojte ukupan broj porudžbina koji je svaki od zaposlenih obradio za svakog kupca.
  • Pronađite najveću porudžbinu dana za svakog od zaposlenih.

Da biste sumirali podatke, koristite upit za ukupne vrednosti sličan onima koju su razmotreni u odeljku Omogućavanje prikaza različitih zapisa određivanjem koji se duplikati pojavljuju u rezultatima ranije u ovom članku. Taj odeljak sadrži objašnjenja o tome kako da koristite upit za ukupne vrednosti sa samo jednom tabelom. Da biste kreirali upit za ukupne vrednosti koji sadrži više tabela, postupite na sledeći način:

  • Imajte u vidu da je potrebno da dodate i drugu tabelu kada u dijalog Prikazivanje tabele dodate prvu tabelu.
  • Kada dodate polja koja određuju dupliranje, prevucite željena polja iz obe tabele i za sve njih podesite vrednost u redu Ukupno na Grupiši po.
  • Polje koje identifikuje zapis koji želite da vidite ili koje ima vrednosti koje želite da sumirate može da bude iz bilo koje tabele.

Vrh odeljka


Vrh stranice Vrh stranice

 
 
Primenljivo na:
Access 2007