Možda ćete naići na situacije u kojima ne možete uređivati podatke u prikazu podatkovne tablice upita da biste promijenili podatke u temeljnoj tablici. U ovom ćete članku saznati kada možete uređivati podatke upita, a kada ih uređivati te kako promijeniti dizajn upita da biste mogli uređivati podatke u njegovoj podlozi.
Sadržaj članka
- Uvod
- Kada mogu uređivati podatke u upitu?
- Kada ne mogu uređivati podatke u upitu?
- Kako promijeniti upit radi uređivanja njegovih podataka?
Uvod
Kada otvorite upit u prikazu podatkovne tablice, možda ćete ustanoviti da želite urediti podatke. Možda ste primijetili pogrešku ili vam se prikazuju zastarjele informacije. Ovisno o načinu izrade upita, podatke možete uređivati izravno u podatkovnoj tablici upita.
Ako pokušate urediti podatke u podatkovnoj tablici upita, ali se ništa ne dogodi ili ako Windows reproducira zvuk, a ne izvršite uređivanje, uređivanje nećete moći izvesti. Može se dogoditi da sam upit nije dostupan za uređivanje, na primjer, unakrsni upit. Može se dogoditi i da samo polje koje pokušavate urediti nije dostupno za uređivanje, npr. ako se polje temelji na agregatnoj funkciji, kao što je prosjek. U oba slučaja možda ćete moći omogućiti uređivanje.
Osim uređivanja podataka u prikazu podatkovne tablice upita možete koristiti i upit s ažuriranjem da biste ažurirali podatke u tablici. Ovaj članak ne obuhvaća upite s ažuriranjem.
Dodatne informacije o upitima s ažuriranjem potražite u članku Stvaranje i pokretanje upita s ažuriranjem.
Kada želite urediti podatke u prikazu podatkovne tablice upita, obično želite spremiti promjene u tablicama na kojima se upit temelji. Ako ne želite mijenjati podatke u tim tablicama, ali želite urediti podatke i zadržati uređene podatke nakon dovršetka s radom, pomoću upita za stvaranje tablice možete najprije stvoriti novu tablicu čije podatke možete uređivati. Upit za stvaranje tablice možete koristiti i da biste rezultate upita koji ne dopušta uređivanje spremili kao novu tablicu, a zatim urediti podatke u toj novoj tablici. U ovom se članku ne razmatra način stvaranja i pokretanja upita za stvaranje tablice.
Dodatne informacije o upitima za stvaranje tablice potražite u članku Stvaranje upita za stvaranje tablice.
Kada mogu uređivati podatke u upitu?
Podatke u upitu možete uređivati u svakom trenutku kada se upit temelji samo na jednoj tablici ili na dvjema tablicama koje su u međusobnom odnosu jedan-prema-jedan.
Napomena
Čak i kada u upitu možete uređivati podatke, neka polja iz njega možda neće biti dostupna za uređivanje. Takvi su slučajevi navedeni u sljedećem odjeljku.
Kada ne mogu uređivati podatke u upitu?
Podatke u upitu ne možete uređivati u sljedećim slučajevima:
Upit je unakrsni upit.
Upit je upit specifičan za SQL.
Polje koje pokušavate urediti izračunato je polje. U tom slučaju možda ćete moći uređivati i druga polja.
Upit se temelji na trima ili više tablica i postoji odnos više-prema-jedan-prema-više.
Napomena
Iako u tom slučaju ne možete uređivati podatkovnu tablicu upita, možete urediti podatke u obrascu kada je svojstvo RecordsetType obrasca postavljeno na Dinamički skup (nedosljedna Ažuriranja)).
Upit sadrži uvjet GROUP BY.
Kako promijeniti upit radi uređivanja njegovih podataka?
U sljedećoj su tablici navedeni slučajevi kada ne možete urediti upit u kombinaciji s metodama za stavljanje podatkovne tablice upita na raspolaganje za uređivanje.
| Vrijednosti u podatkovnoj tablici upita ne možete uređivati u sljedećim slučajevima: | Da bi podatkovna tablica upita bila dostupna za uređivanje: |
|---|---|
| Svojstvo Jedinstvene vrijednosti upita postavljeno je na Da. | Svojstvo Jedinstvene vrijednosti upita postavite na Ne. U sljedećem odjeljku Postavljanje svojstva Jedinstvene vrijednosti na Ne saznajte kako postaviti to svojstvo. |
| Upit sadrži povezanu ODBC bazu podataka bez jedinstvenog indeksa ili tablicu Paradox bez primarnog ključa. | Dodajte primarni ključ ili jedinstveni indeks u povezanu tablicu na način koji nudi dobavljač povezane baze podataka. |
| Nemate dozvole za ažuriranje podataka za temeljnu tablicu. | Dodijelite dozvole za ažuriranje podataka. |
| Upit obuhvaća više tablica ili jedan upit, a tablice ili upiti u prikazu dizajna ne spajaju se crtom spajanja. | Stvorite odgovarajuće spojeve. Da biste saznali kako stvoriti spojeve, pogledajte odjeljak Stvaranje spojeva. |
| Baza podataka otvorena je samo za čitanje ili se nalazi na pogonu samo za čitanje. | zatvaranje i ponovno otvaranje baze podataka bez odabira mogućnosti Otvori samo za čitanje Ako se baza podataka nalazi na pogonu koji je samo za čitanje, uklonite atribut samo za čitanje s pogona ili bazu podataka premjestite na pogon koji nije samo za čitanje. |
| Polje u zapisu koji pokušavate ažurirati izbrisano je ili ga je zaključao neki drugi korisnik. | Pričekajte da se zapis otključa. Zaključani zapis može se ažurirati čim se otključa. Pričekajte da drugi korisnik dovrši operaciju koja je zaključala zapis. |
| Upit se temelji na tablicama s odnosom jedan-prema-više, a spojeno polje na strani "više" nije izlazno polje. U tom slučaju podatke u spoju sa strane "jedan" nije moguće uređivati. | Dodajte spojeno polje sa strane odnosa "više" u izlazna polja upita. Pogledajte odjeljak Dodavanje spoja sa strane "više" u izlazna polja upita da biste saznali kako dodati polje spoja. |
| Spojeno polje na strani "više" (nakon uređivanja podataka) nalazi se na strani "jedan". | Pritisnite SHIFT+F9 da biste potvrdili promjene i osvježili upit. |
| U tablici na strani "jedan" u odnosu jedan-prema-više nalazi se prazno polje iz tablice, a spoj je desni vanjski spoj. | Provjerite ima li vrijednost u tom polju na strani "jednoga". Spojeno polje na strani "više" možete urediti samo ako u tom polju na strani "jedan" postoji vrijednost. |
| Koristite povezanu ODBC bazu podataka i neka se polja iz jedinstvenog indeksa povezane tablice ne nalaze u izlazu upita. | Dodajte sva polja iz jedinstvenog indeksa ODBC tablice u izlazna polja upita. Da biste saznali kako dodati polja, pogledajte odjeljak Dodavanje jedinstvenih polja indeksa iz povezane ODBC tablice. |
Postavite svojstvo Jedinstvene vrijednosti na Ne
- Otvorite upit u prikazu dizajna.
- Ako list svojstava nije otvoren, otvorite ga pritiskom na F4. Jedanput kliknite rešetku dizajna upita da biste provjerili prikazuju li se na listu svojstava upita, a ne svojstva polja.
- Na listu svojstava potražite okvir svojstva Jedinstvene vrijednosti . Kliknite okvir pokraj tog okvira pa strelicu u tom okviru, a potom Ne.
Stvaranje spojeva
- Otvorite upit u prikazu dizajna.
- Za svaku tablicu ili upit koji želite spojiti s drugom povucite spojeno polje iz te tablice ili upita u odgovarajuće polje u tablici ili upitu na kojem želite stvoriti spoj.
Dodatne informacije o stvaranju spojeva potražite u članku Spajanje tablica i upita.
Dodavanje spoja sa strane "više" u izlazna polja upita
- Otvorite upit u prikazu dizajna.
- U dizajneru upita pronađite spoj koji odgovara odgovarajućem odnosu jedan-prema više.
- Dvokliknite spojeno polje na strani "više" u odnosu jedan-na-više. Spojeno polje pojavljuje se u rešetki polja, što upućuje na to da je sada izlazno polje.
Dodavanje jedinstvenih polja indeksa iz povezane ODBC tablice
- Otvorite upit u prikazu dizajna.
- U dizajneru upita pronađite povezanu ODBC tablicu.
- Uz naziv polja jedinstvenog indeksa pojavit će se simbol ključa. Dvokliknite svako polje koje se još ne nalazi u rešetki polja. Svako će se polje prikazati u rešetki polja, što upućuje na to da je sada izlazno polje.