Este posibil să întâmpinați situații în care nu puteți edita date în vizualizare Foaie de date de interogare pentru a modifica datele din tabelul de bază. Acest articol vă ajută să înțelegeți când puteți să editați date de interogare, atunci când nu puteți edita date de interogare și cum să modificați proiectarea unei interogări, astfel încât să puteți edita datele subiacente.
În acest articol
Introducere
Atunci când deschideți o interogare în vizualizarea foaie de date, este posibil să descoperiți că doriți să editați datele. Probabil observați o eroare sau poate Vedeți unele informații care nu mai sunt în prezent. În funcție de modul în care a fost construită interogarea, puteți să editați datele direct în foaie de date de interogare.
Dacă încercați să editați datele dintr-o foaie de date de interogare, dar nu se întâmplă nimic sau Windows redă un sunet și editarea nu se întâmplă, nu puteți efectua editarea. Se poate întâmpla ca interogarea însăși să nu fie disponibilă pentru editare, cum ar fi o interogare tabel încrucișat. De asemenea, se poate întâmpla ca doar câmpul pe care încercați să-l editați să nu fie disponibil pentru editare — de exemplu, dacă câmpul se bazează pe o funcție agregată, cum ar fi o medie. În orice caz, este posibil să reușiți să faceți ceva pentru a activa editarea.
În plus față de editarea datelor în vizualizarea foaie de date a interogării, puteți utiliza, de asemenea, un interogare de actualizare pentru a actualiza datele dintr-un tabel. Acest articol nu acoperă interogările de actualizare.
Pentru mai multe informații despre interogările de actualizare, consultați articolul Crearea și rularea unei interogări de actualizare.
De obicei, când doriți să editați date în vizualizarea foaie de date a interogării, doriți ca modificările să fie salvate în tabelele pe care se bazează interogarea. Dacă nu doriți să modificați datele din aceste tabele, dar doriți în continuare să editați datele și să păstrați datele editate după ce terminați, puteți utiliza un interogare de creare tabel pentru a crea mai întâi un tabel nou ale cărui date să le editați. De asemenea, puteți utiliza o interogare de creare tabel pentru a salva rezultatele unei interogări care nu permite editarea ca tabel nou, apoi editați datele din acel tabel nou. Acest articol nu discută despre cum se creează și se rulează interogările de creare tabel.
Pentru mai multe informații despre interogările de creare tabel, consultați articolul crearea unei interogări de creare tabel.
Când pot edita datele dintr-o interogare?
Puteți edita întotdeauna datele dintr-o interogare atunci când interogarea se bazează pe un singur tabel sau pe două tabele care suportă un relația unu-la-unu reciproc.
Notă: Chiar și atunci când puteți edita date într-o interogare, este posibil ca unele dintre câmpurile sale să nu fie disponibile pentru editare. Aceste cazuri sunt listate în secțiunea următoare.
Când nu pot edita datele dintr-o interogare?
Nu puteți edita niciodată datele dintr-o interogare atunci când:
-
Interogarea este un interogare tabel încrucișat.
-
Interogarea este un interogare specifică pentru SQL.
-
Câmpul pe care încercați să-l editați este un câmp calculat. În acest caz, este posibil să reușiți să editați celelalte câmpuri.
-
Interogarea se bazează pe trei sau mai multe tabele și există o relație mai multe-la-unu-la-mai-mulți.
Notă: Deși nu puteți edita foaia de date a interogării în acest caz, puteți edita datele dintr-un formular atunci când proprietatea RecordsetType a formularului este setată la dinamic (actualizări inconsistente).
-
Interogarea conține o clauză GROUP BY.
Cum modific o interogare pentru a-I putea edita datele?
Următorul tabel listează cazurile când nu puteți edita o interogare, asociată cu metode pentru a face disponibilă foaia de date a interogării pentru editare.
Nu este posibil să editați valorile dintr-o foaie de date interogare atunci când: |
Pentru a face disponibilă foaia de date a interogării pentru editare: |
Proprietatea valori unice a interogării este setată la Da. |
Setați proprietatea valori unice a interogării la nu. Consultați secțiunea următoare, Setați proprietatea valori unice la nu, pentru a afla cum să setați această proprietate. |
Interogarea include un tabel bază de date ODBC legat, fără index unic sau un tabel Paradox fără cheie primară. |
Adăugați o cheie primară sau un index unic la tabelul legat, utilizând metodele furnizate de vânzătorul bazei de date legate. |
Nu aveți permisiuni de actualizare a datelor pentru tabelul subiacent. |
Atribuiți permisiuni de actualizare a datelor. |
Interogarea include mai mult de un tabel sau o interogare, iar tabelele sau interogările nu sunt asociate cu o linie de asociere în vizualizarea proiect. |
Creați asocierile corespunzătoare. Consultați secțiunea, Creați asocieri, pentru a afla cum să creați asocierile. |
Baza de date este deschisă doar în citire sau se află pe o unitate doar în citire. |
Închideți baza de date și redeschideți-o fără a selecta Deschidere doar în citire; sau, dacă baza de date se află pe o unitate doar în citire, eliminați atributul doar în citire din unitate sau mutați baza de date pe o unitate care nu este doar în citire. |
Câmpul din înregistrarea pe care încercați să o actualizați este șters sau este blocat de alt utilizator. |
Așteptați ca înregistrarea să devină deblocată. O înregistrare blocată poate fi actualizată imediat ce înregistrarea este deblocată. Așteptați ca celălalt utilizator să termine operațiunea care a blocat înregistrarea. |
Interogarea se bazează pe tabele cu relație unu-la-mai mulți, iar câmpul asociere din partea "mulți" nu este un câmp de ieșire. În acest caz, datele din câmpul unire din partea "unu" nu se pot edita. |
Adăugați câmpul asociere din partea "mulți" a relației la câmpurile de ieșire a interogării. Consultați secțiunea, Adăugați câmpul asociere din partea "mulți" la câmpurile de ieșire ale interogării, pentru a afla cum să adăugați câmpul asociere. |
Câmpul asociere din partea "mulți" (după ce editați datele) se află în partea "unu". |
Apăsați SHIFT + F9 pentru a comite modificările și a reîmprospăta interogarea. |
Există un câmp necompletat din tabel în partea "unu" a unei relații unu-la-mai-mulți, iar asocierea este o asociere externă la dreapta. |
Asigurați-vă că există o valoare în acel câmp în partea "unu". Puteți edita câmpul asociere în partea "mai multe" doar dacă există o valoare în acel câmp în partea "unu". |
Utilizați un tabel de bază de date ODBC legat și nu toate câmpurile din indexul unic al tabelului legat se află în rezultatul interogării. |
Adăugați toate câmpurile din indexul unic al tabelului ODBC în câmpurile de ieșire a interogării. Consultați secțiunea adăugarea câmpurilor index unice dintr-un tabel ODBC legat, pentru a afla cum să adăugați câmpurile. |
Setarea proprietății valori unice la nu
-
Deschideți interogarea în vizualizarea proiect.
-
Dacă foaia de proprietăți nu este deschisă, deschideți-o apăsând F4. Faceți clic o dată în grila de proiectare a interogării pentru a vă asigura că foaia de proprietăți afișează proprietățile interogării în locul proprietăților câmpului.
-
În foaia de proprietăți, găsiți caseta proprietății valori unice . Faceți clic pe caseta de lângă ea, faceți clic pe săgeata din acea casetă, apoi faceți clic pe nu.
Creați asocieri
-
Deschideți interogarea în vizualizarea proiect.
-
Pentru fiecare tabel sau interogare pe care doriți să vă asociați la altul, glisați câmpul asociere din acel tabel sau interogare la câmpul corespondent din tabelul sau interogarea pe care doriți să creați asocierea.
Pentru mai multe informații despre crearea asocierilor, consultați articolul, asocierea la tabele și interogări.
Adăugarea câmpului asociere din partea "mulți" la câmpurile de ieșire a interogării
-
Deschideți interogarea în vizualizarea proiect.
-
În proiectantul de interogări, găsiți asocierea care corespunde relației unu-la-mai-mulți.
-
Faceți dublu clic pe câmpul asociere din partea "mulți" a relației unu-la-mai-mulți. Câmpul asociere apare în grila de câmpuri, indicând faptul că acesta este acum un câmp de ieșire.
Adăugarea câmpurilor index unice dintr-un tabel ODBC legat
-
Deschideți interogarea în vizualizarea proiect.
-
În proiectantul de interogări, găsiți tabelul ODBC legat.
-
Câmpurile index unic vor avea un simbol cheie lângă numele câmpului. Faceți dublu clic pe fiecare câmp care nu este deja în grila de câmpuri. Fiecare câmp apare în grila de câmpuri, indicând faptul că acesta este acum un câmp de ieșire.