Duplicirane vrijednosti u polju u tablici programa Access možete spriječiti stvaranjem jedinstvenog indeksa. Jedinstveni indeks indeks je koji zahtijeva da svaka vrijednost indeksiranog polja ima jedinstvenu vrijednost.
Dva su osnovna načina stvaranja jedinstvenog indeksa:
-
Postavljanje svojstva indeksiranog polja na Da (bez duplikata) To možete učiniti tako da otvorite tablicu u prikaz dizajna. Ta je metoda jednostavna i dobar izbor ako želite promijeniti samo jedno po jedno polje.
-
Stvaranje upit za definiranje podataka koji stvara jedinstveni indeks To možete učiniti pomoću SQL prikaz. Ova metoda nije jednostavna kao korištenje prikaza dizajna, ali ima prednost: upit s definicijom podataka možete spremiti i kasnije ga ponovno koristiti. To je korisno ako povremeno brišete i ponovno stvarate tablice i želite koristiti jedinstvene indekse na nekim poljima.
Što želite učiniti?
Postavljanje svojstva indeksiranog polja na Da (bez duplikata)
-
U navigacijskom oknu desnom tipkom miša kliknite tablicu koja sadrži polje, a zatim kliknite Prikaz dizajna.
-
Odaberite polje za koje želite da ima jedinstvene vrijednosti.
-
U oknu Svojstva polja pri dnu prikaza dizajna tablice na kartici Općenito postavite svojstvo Indeksirano na Da (bez duplikata)..
-
Spremite promjene tablice.
Napomena: Ako duplikati već postoje u polju za zapise tablice, Access prikazuje poruku o pogrešci (pogreška 3022) kada pokušate spremiti promjene tablice pomoću novog indeksa. Morat ćete ukloniti te duplicirane vrijednosti polja iz zapisa tablice da biste mogli postaviti i spremiti novi jedinstveni indeks.
Stvaranje jedinstvenog indeksa za polje pomoću upita s definicijom podataka
-
Na kartici Stvaranje u grupi Upiti kliknite Dizajn upita.
-
Na kartici Dizajn za upite u grupi Rezultati kliknite strelicu u odjeljku Prikaz, a zatim SQL prikaz.
-
Izbrišite sav postojeći SQL iz upita. (Access najvjerojatnije samo prikazuje SELECT; prije brisanja postojećeg teksta.)
-
U upit upišite ili zalijepite sljedeći SQL:
CREATE UNIQUE INDEX index_name
ON table (field); -
U SQL-u zamijenite varijable na sljedeći način:
-
Zamijenite index_name nazivom indeksa. Dobro je koristiti naziv koji će vam pomoći da utvrdite za što je indeks. Ako, primjerice, indeks mora biti jedinstven, možete mu dodijeliti naziv unique_phone.
-
Zamijenite tablicu nazivom tablice koja sadrži polje koje će se indeksirati. Ako naziv tablice sadrži razmake ili posebne znakove, naziv morate navesti u uglatim zagradama.
-
Zamijenite polje nazivom polja koje će se indeksirati. Ako naziv polja sadrži razmake ili posebne znakove, naziv morate navesti u uglatim zagradama.
-
-
Spremite i zatvorite upit.
-
Pokrenite upit da biste stvorili indeks. Imajte na umu da upit možete pokrenuti iz makronaredbe pomoću akcije makronaredbe RunSQL.