Căutare Tot Office.com
 
Asistență / Access / Articole introductive și Ajutor Access 2003 / Creare și lucru cu baze de date și obiecte
 
 

Îmbunătățirea performanței unei baze de date Access

Se aplică la: Microsoft Office Access 2003

 

În funcție de configurația computerului dumneavoastră și de meniul de lucru, există câteva lucruri care se pot face pentru a îmbunătăți performanța Microsoft Access sau a bazei de date Microsoft Access (bază de date: O colecție de date relative la un anumit subiect sau scop. Într-o bază de date, informațiile despre o anumită entitate, cum ar fi un angajat sau o comandă, este aranjată în tabele, înregistrări și câmpuri.).

Dacă optimizați performanța unei baze de date Access, cel mai bun loc de început este cu Analizatorul de performanță. Se poate folosi Analizatorul de performanță pentru a analiza o bază de date întreagă sau doar obiectele selectate dintr-o bază de date. De asemenea, Analizatorul de performanță poate face câteva modificări propuse dacă se dorește.

AfișareExecuția Analizatorului de performanță

Aveți posibilitatea să utilizați Analizatorul de performanță pentru optimizarea performanței unei baze de date Microsoft Access (bază de date: O colecție de date relative la un anumit subiect sau scop. Într-o bază de date, informațiile despre o anumită entitate, cum ar fi un angajat sau o comandă, este aranjată în tabele, înregistrări și câmpuri.). Analizatorul de performanță nu este disponibil într-un proiect Access (proiect Microsoft Access: Un fișier Access care se conectează la o bază de date Microsoft SQL Server și se utilizează pentru a crea aplicații client/server. Un fișier proiect nu conține date sau obiecte bazate pe definiții de date, cum ar fi tabele și vizualizări.).

  1. Deschideți baza de date Access pentru care doriți optimizare.
  2. În meniul Instrumente, indicați spre Analiză, apoi faceți clic pe Performanță.
  3. Faceți clic pe fila pentru tipul de obiect al bazei de date (obiecte bază de date: O bază de date Access conține obiecte ca tabele, interogări, formulare, rapoarte, pagini, macrocomenzi și module. Un proiect Access conține obiecte ca formulare, rapoarte, pagini, macrocomenzi și module.) pentru care doriți optimizare. Faceți clic pe fila Toate tipurile de obiecte pentru vizualizarea unei liste cu toate obiectele bazei de date deodată.
  4. Selectați numele obiectelor bazei de date pentru care doriți optimizare. Faceți clic pe Selectare totală pentru a selecta toate obiectele bazei de date din listă.
  5. Repetați pașii 3 și 4 până la selectarea tuturor obiectelor pentru optimizare, și apoi faceți clic pe OK.

Analizatorul de performanță listează trei tipuri de rezultate de analiză: Recomandare, Sugestie, și Idee. Când faceți clic pe un element din lista Rezultate analiză, sunt afișate informații despre optimizarea propusă în caseta Note analiză aflată sub listă. Optimizările Sugestie conțin posibile tradeoffs de care trebuie ținut cont înainte de a fi efectuate. Pentru vizualizarea unei descrieri a tradeoffs, faceți clic pe o Sugestie din listă și apoi citiți informațiile din caseta Note analiză. Access poate efectua optimizările Recomandare și Sugestie în locul utilizatorului. Optimizarea Idee trebuie efectuată doar de utilizator.

  1. Faceți clic pe una sau mai multe optimizări Recomandare sau Sugestie pe care doriți să le efectuați, și apoi faceți clic pe Optimizare. Analizatorul de performanță va efectua optimizările și apoi le va marca Fixate. Continuați procesul până când Analizatorul de performanță a încheiat toate optimizările Recomandare și Sugestie pe care doriți să le efectuați.

Pentru a executa optimizările Recomandare și Sugestie, faceți clic pe Select All, iar apoi faceți clic pe Optimizare.

Pentru efectuarea unei optimizări Idee, faceți clic pe optimizare, și apoi urmați instrucțiunile afișate în caseta Note analiză.

 Notă   Analizatorul de performanță nu furnizează sugestii despre modul de îmbunătățire a performanței Microsoft Access sau a sistemului sub care lucrează.

AfișareÎmbunătățirea performanței Microsoft Access și a sistemului dumneavoastră

Următoarele indicații vă pot ajuta la optimizarea performanțelor Microsoft Access pe calculator:

  • Dacă utilizați baze de date pe care alți utilizatori nu au nevoie să le partajeze, instalați Microsoft Access și toate bazele de date pe discul dumneavoastră fix în locul unui server din rețea.
  • Dacă sunteți singura persoană care utilizează o bază de date, deschideți baza de date pentru utilizare exclusivă; în caseta de dialog Deschidere faceți clic pe săgeata de lângă butonul Deschidere, apoi faceți clic pe Deschidere exclusivă.
  • Disponibilizați mai multă memorie închizând aplicațiile neutilizate.
  • Măriți memoria RAM a computerului. Se recomandă 40 MB de memorie— 32 MB de memorie plus 8 MB pentru memorie suplimentară Microsoft Access.
  • Nu utilizați memorie RAM pentru un disc RAM.
  • Ștergeți periodic fișierele care nu mai sunt necesare și goliți Coșul de reciclare, compactați bazele de date, apoi defragmentați discul fix cu programul Defragmentare disc din Microsoft Windows. Pentru a rula programul Defragmentare disc faceți clic pe butonul Start din Windows, indicați spre Programe, indicați spre Accesorii, indicați spre Instrumente de sistem, apoi faceți clic pe Program Defragmentare disc.
  • În cele mai multe cazuri setarea memoriei virtuale utilizată de Windows ar trebui să funcționeze optim. Cu toate acestea, în unele situații ajustarea parametrilor memoriei virtuale poate îmbunătăți performanțele. Dacă ați încercat deja ștergerea fișierelor nenecesare și încâ mai aveți probleme cu performanțele, încercați modificarea setării implicite a memoriei virtuale în următoarele cazuri:
    • Nu aveți mult spațiu disc disponibil pe discul care este utilizat în prezent pentru memoria virtuală și este disponibil un alt disc local cu spațiu suficient.
    • Un alt disc local este disponibil și este mai rapid decât discul curent (în afara cazului în care acel disc este utilizat intensiv).

În aceste cazuri ați obține performanțe mai bune specificând un disc diferit pentru memoria virtuală.

De asemenea ați obține performanțe mai bune specificând spațiul disc disponibil pentru memoria virtuală ca fiind 25 MB minus RAM disponibil. De exemplu, dacă aveți 12 MB de RAM pe calculator, ar trebui să precizați cel puțin 13 MB de memorie virtuală. Specificați mai mult dacă lucrați cu mai multe aplicații mari.

Pentru a modifica parametrii memoriei virtuale a Windows, în Panoul de control din Windows faceți dublu clic pe pictograma Sistem, faceți clic pe Opțiuni performanță din fila Complex, faceți clic pe butonul Modificare din secțiunea Memorie virtuală, apoi specificați un disc fix diferit sau introduceți o valoare în caseta Dimensiune inițială care este cel puțin egală cu 25 minus RAM disponibil.

  • Dacă aveți un wallpaper (fundal pe întregul ecran) bitmap pe suprafața de lucru Windows, înlocuiți-l cu un bitmap culoare constantă sau model, sau fără nici un bitmap.
  • Dacă utilizați un economizor de ecran, utilizați unul necompletat sau nu utilizați nici unul.
  • Eliminați programele de compresie ale discului sau gândiți-vă la mutarea bazelor de date pe o unitate necomprimată.
  • Pentru a asigura performanțe optime utilizați fonturi subsituite doar dacă aveți nevoie de suport fonturi duale pentru afișarea tuturor datelor.

AfișareÎmbunătățirea performanței tabelului

Totuși, indexurile nu reprezintă o soluție pentru toate situațiile. Indexurile cresc dimensiunea fișierului .mdb, reduc simultaneitatea (posibilitatea ca mai mulți utilizatori să modifice o pagină în același timp) în aplicații multiutilizator și scad performanța la actualizarea datelor în câmpuri indexate sau la adăugarea sau ștergerea înregistrărilor. Este de preferat să se efectueze un test pentru determinarea câmpurilor ce trebuie indexate. Adăugarea unui index poate accelera interogarea cu o secundă, dar poate încetini adăugarea unui rând de date cu două secunde și poate cauza probleme de blocare. Sau poate aduce câștiguri nesemnificative în funcție de câmpurile care sunt indexate. De exemplu, adăugarea unui index la un câmp CodPoștal poate furniza un câștig foarte redus al performanței dacă în tabel câmpurile NumeCompanie și NumeFamilie sunt deja indexate. Indiferent de tipurile de interogări create, trebuie indexate doar câmpurile care au numai valori unice.

  • Într-un index după câmpuri multiple, utilizați doar atât de multe câmpuri câte sunt necesare în index.

AfișareÎmbunătățirea performanței tabelelor legate

 Notă   Aveți posibilitatea de a lega (legare (pentru tabele): O acțiune care stabilește o conexiune la datele din altă aplicație, astfel încât să fie posibilă vizualizarea și editarea datelor, atât în aplicația inițială cât și în Access.) un tabel numai într-o bază de date Microsoft Access (bază de date Microsoft Access: O colecție de date și obiecte (cum ar fi tabele, interogări sau formulare) care sunt grupate pe baza unui anumit subiect sau scop.), nu și într-un proiect Microsoft Access (proiect Microsoft Access: Un fișier Access care se conectează la o bază de date Microsoft SQL Server și se utilizează pentru a crea aplicații client/server. Un fișier proiect nu conține date sau obiecte bazate pe definiții de date, cum ar fi tabele și vizualizări.).

Deși este posibil să utilizați tabelele legate ca și cum ar fi tabele obișnuite din baza de date Microsoft Access, este important să rețineți că ele nu se află de fapt în baza de date Access. De fiecare dată când vizualizați datele dintr-un tabel legat, Microsoft Access trebuie să preia înregistrările din alt fișier. Această preluare poate dura ceva timp, în special dacă tabelul legat este în rețea sau într-o bază de date SQL (bază de date SQL: Bază de date care este bazată pe limbajul SQL - Limbaj structurat de interogare.).

Dacă utilizați un tabel legat într-o rețea sau într-o bază de date SQL, urmați aceste indicații pentru a obține rezultate bune:

  • Aveți posibilitatea să îmbunătățiți mult funcționalitatea când deschideți baza de date principală, precum și tabelele și formularele impunând ca baza de date legată să rămână deschisă. Pentru aceasta, creați un tabel necompletat în baza de date legată și legați tabelul la baza de date principală. Apoi utilizați metoda OpenRecordset pentru a deschide tabelul legat. Acest fapt împiedică motorul bază de date Microsoft Jet să închidă și să deschidă în mod repetat baza de date legată și să creeze și să șteargă de fiecare dată fișierul .ldb asociat.
  • Vizualizați numai datele de care aveți nevoie. Nu vă deplasați printre pagini în foaia de date, dacă nu este necesar. Evitați saltul la ultima înregistrare dintr-un tabel mare. Dacă doriți să adăugați noi înregistrări la un tabel mare, utilizați comanda Intrare date din meniul Înregistrări pentru a evita încărcarea înregistrărilor existente în memorie.
  • Utilizați filtre sau interogări pentru a limita numărul de înregistrări pe care le vizualizați într-un formular sau într-o foaie de date. Astfel, Microsoft Access transferă mai puține date prin rețea.
  • În interogări care implică tabele legate, evitați utilizarea funcțiilor în criteriile de interogare. În special, evitați utilizarea funcțiilor agregate de domeniu (funcție agregată de domeniu: O funcție, cum ar fi DAvg sau DMax, care se utilizează pentru a calcula statistici pentru un set de înregistrări (un domeniu).), cum ar fi Dsum, oriunde în interogări. Când utilizați o funcție agregată de domeniu, Microsoft Access preia toate datele din tabelul legat pentru a executa interogarea.
  • Dacă adăugați frecvent înregistrări unui tabel legat, creați un formular pentru adăugarea de înregistrări care să aibă proprietatea Intrare date setată la Da. Când deschideți formularul pentru a introduce noi date, Microsoft Access nu afișează nici una dintre înregistrările existente. Această setare a proprietății economisește timp pentru că Microsoft Access nu mai trebuie să preia înregistrările din tabelul legat.
  • Amintiți-vă că și alți utilizatori pot încerca să utilizeze un tabel extern timp ce vă aflați în el. Când o bază de date Microsoft Access este în rețea, evitați blocarea înregistrărilor mai mult timp decât este necesar.

AfișareÎmbunătățirea performanței tabelelor legate de SQL server

Dacă datele din aplicația front-end/back-end (aplicații front-end/back-end: Aplicație de bază de date constând dintr-un fișier bază de date „back-end” care conține tabele și copii ale unui fișier bază de date „front-end” care conține toate celelalte obiecte de bază de date cu legături la tabelele „back-end”.) constau doar din tabele Microsoft SQL Server, aveți posibilitatea să utilizați fie un proiect Microsoft Access fie o bază de date Microsoft Access drept componentă front end a aplicației. Cu toate acestea, utilizând un proiect Access veți beneficia de avantajele proiectelor cum ar fi un număr mai mare de tabele și o domensiune mai mare a bazei de date. Dacă doriți ca datele din aplicația front-end/back-end să constea în tabele Microsoft Access și tabele Microsoft SQL server, trebuie să utilizați o bază de date Access drept front end.

Dacă vă conectați la un tabel dintr-o bază de date SQL externă, aveți posibilitatea de a obține cele mai bune rezultate prin legarea (legare (pentru tabele): O acțiune care stabilește o conexiune la datele din altă aplicație, astfel încât să fie posibilă vizualizarea și editarea datelor, atât în aplicația inițială cât și în Access.) la tabele SQL în loc de a deschide direct tabelele. Aveți posibilitatea să deschideți tabele SQL externe în mod direct doar utilizând cod Microsoft Visual Basic. Tabelele legate sunt în mod considerabil mai rapide, mai puternice și mai eficiente decât cele deschise în mod direct.

Sfaturi performanță suplimentare

AfișareÎmbunătățirea performanței într-un mediu multiutilizator

Următoarele indicații vă ajută să optimizați performanțele bazelor de date Microsoft Access (bază de date Microsoft Access: O colecție de date și obiecte (cum ar fi tabele, interogări sau formulare) care sunt grupate pe baza unui anumit subiect sau scop.) utilizate într-un mediu multiutilizator.

  • Puneți numai tabelele în serverul de rețea și păstrați celelalte obiecte ale bazei de date în calculatoarele utilizatorilor. Funcționarea bazei de date va fi mai rapidă deoarece numai datele sunt trimise prin rețea. Aveți posibilitatea să separați tabelele de celelalte obiecte ale bazei de date utilizând expertul Divizare bază de date.
  • Alegeți o strategie adecvată de blocare a înregistrărilor. Dacă utilizați o blocare optimistă (Fără blocare), Access nu blochează o înregistrare sau o pagină până la salvarea modificărilor aduse, în consecință datele devin mai rapid disponibile. Dacă utilizați o blocare pesimistă (Înregistrări editate), Access blochează înregistrările imediat ce utilizatorul începe editarea ei —- este posibil ca înregistrările să fie blocate pentru perioade mai lungi de timp, dar dacă doi utilizatori editează aceeași înregistrare simultan ei nu trebuie să decidă care dintre modificări se salvează.
  • Alegeți strategia corespunzătoare pentru nivelul de blocare (blocare la nivel de pagină sau la nivel de înregistrare).
  • Evitați conflictele de blocare prin ajustarea setărilor Interval reîmprospătare, Interval reîncercare actualizare, Număr încercări de actualizare și Interval reîmprospătare ODBC (dacă se aplică).
  • Optimizați performanța tabelelor (inclusiv a tabelelor legate la alte surse de date cum ar fi Microsoft SQL Server).
  • Efectuați conversia fișierului cu informațiile grupului de lucru (fișier de informații al grupului de lucru: Un fișier pe care Access îl citește la pornire care conține informații despre utilizatorii dintr-un grup de lucru. Această informație include numele de cont ale utilizatorilor , parolele lor, și grupurile în care sunt membri.) din Access 97 sau anterior la versiunea curentă de Access.

AfișareÎmbunătățirea performanței interogării

AfișareBaze de date, tabele și indexuri

Motorul Jet optimizează automat o interogare care asociază un tabel Microsoft Access din unitatea de disc locală și un tabel server ODBC (Open Database Connectivity (ODBC): O metodă standard de partajare a datelor între bazele de date și programe. Driverele ODBC utilizează standardul Structured Query Language (SQL) pentru a obține acces la datele exterioare.), dacă tabelul Access este mic și câmpurile asociate sunt indexate. În acest caz, Access sporește eficiența, cerând numai înregistrările necesare de la server. Asigurați-vă că tabelele pe care le asociați din surse diferite sunt indexate după câmpurile de asociere.

  • Indexați câmpurile utilizate pentru sortare.
  • Utilizați operatorii Between...And, In, și = cu câmpurile indexate.

AfișareCâmpuri, calcule și criterii

Q1: SELECT IIF([MyColumn]="Yes","Order Confirmed","Order Not Confirmed") AS X FROM MyTable;
Q2: SELECT * FROM Q1 WHERE X="Order Confirmed";
                        

Deoarece expresia IIf din Q1 nu poate fi optimizată, Q2 nu poate fi, de asemenea, optimizată. Dacă o expresie imposibil de optimizat este imbricată într-o subinterogare, întreaga interogare este imposibil de optimizat.

O metodă alternativă de a construi interogarea este:

Q1: SELECT * FROM MyTable WHERE MyColumn = "Yes";
                        

Construiți interogarea ca mai jos:

PARAMETERS [Pentru a vedea comenzile confirmate, introduceți Da. Pentru a vedea comenzile neconfirmate, introduceți Nu.] Text;
SELECT *
FROM MyTable
WHERE MyColumn = [Pentru a vedea comenzile confirmate, introduceți Da. Pentru a vedea comenzile neconfirmate, introduceți Nu.];

În controlul calculat din formular sau raport, introduceți:

=IIF([MyColumn]="Yes","Order Confirmed","Order Not Confirmed")

  • Atunci când grupați înregistrări după valorile dintr-un câmp de asociere, specificați Grupare după pentru câmpul care se află în același câmp ca și câmpul pe care îl totalizați (pentru care calculați o funcție agregată (funcție agregată: O funcție, cum ar fi Sum, Count, Avg, or Var, utilizată pentru calcularea totalurilor.)). De exemplu, dacă creați o interogare care totalizează câmpul Cantitate din tabelul Detalii comenzi și grupează după IDComandă, este recomandabil să specificați Grupare după pentru câmpul IDComandă din tabelul Detalii comenzi. Dacă specificați Grupare după pentru câmpul IDComandă din tabelul Comenzi, Microsoft Access va fi nevoit să asocieze toate înregistrările mai întâi și apoi să efectueze funcția agregată, în loc să efectueze funcția agregată și apoi să asocieze numai câmpurile necesare.

Pentru o viteză mai mare, utilizați Grupare după pentru cât mai puține câmpuri posibil. Ca o alternativă, utilizați funcția First unde corespunde.

Dacă o interogare de total conține o asociere, este recomandabil să grupați înregistrările într-o interogare și să adăugați această interogare la o interogare separată care va efectua asocierea. Acest fapt sporește eficiența anumitor interogări.

AfișareExpresii și optimizarea Rushmore

AfișareGeneralități despre optimizarea Rushmore

Microsoft Access are posibilitatea să optimizeze expresii (expresie: Orice combinație de operatori matematici sau logici, constante, funcții și nume de câmpuri, controale și proprietăți evaluate ca valoare unică. Expresiile efectuează calcule, manipulează caractere sau testează date.) simple sau complexe din rândul Criteriu al grilei de proiect (grilă de proiect: Grilă utilizată pentru proiectarea unei interogări sau filtru în vizualizare proiect sau în fereastra Filtrare/sortare complexă. Pentru interogări, această grilă a fost anterior cunoscută ca grilă QBE.) a interogării, sau dintr-o clauză WHERE a unei instrucțiuni SQL SELECT. Pentru anumite tipuri de expresii complexe, este posibil ca Access să utilizeze Rushmore, o tehnologie de acces la date utilizată de Microsoft Jet Database Engine (Microsoft Jet Database Engine: Parte a sistemului de baze de date Access care preia și stochează datele din bazele de date ale utilizatorilor și ale sistemului. Este un fel de manager de date pe care sunt construite sisteme de baze de date, ca Access.), pentru a atinge un nivel mai ridicat de optimizare. În plus, funcția Count este bine optimizată pentru interogările care utilizează Rushmore.

Interogările Rushmore funcționează cu tabelele Access, ca și cu tabelele Microsoft FoxPro sau dBASE (fișiere .dbf). Nu este posibilă utilizarea Rushmore împreună cu surse de date ODBC (Sursă de date ODBC: Datele și informațiile necesare pentru a accesa datele din programe și baze de date care acceptă protocolul ODBC (Open Database Connectivity).), atâta timp cât Access transmite aceste interogări către sursa de date ODBC și nu le procesează local.

AfișareExpresii simple optimizabile

Este posibil ca o expresie (expresie: Orice combinație de operatori matematici sau logici, constante, funcții și nume de câmpuri, controale și proprietăți evaluate ca valoare unică. Expresiile efectuează calcule, manipulează caractere sau testează date.) simplă optimizabilă să formeze o expresie întreagă sau numai o parte dintr-o expresie. O expresie simplă optimizabilă are una dintre următoarele forme:

CâmpIndexat OperatorComparație Expresie

[Order Date] = #09/15/96#
                        

sau

Expresie OperatorComparație CâmpIndexat

#11/1/96# < [HireDate]
                        

Într-o expresie simplă optimizabilă:

Dacă ați creat indexuri pentru câmpurile Nume, Vârstă și DatăAngajare din tabelul Angajați, următoarele expresii sunt optimizabile simple:

[LastName] = "Smith"

[Age] >= 21

#12/30/90# < [HireDate]

Employees.[LastName] = Customers.[LastName]

[LastName] In ("Smith", "Johnson", "Jones")

[Age] Between 18 And 65

AfișareExpresii complexe

O expresie (expresie: Orice combinație de operatori matematici sau logici, constante, funcții și nume de câmpuri, controale și proprietăți evaluate ca valoare unică. Expresiile efectuează calcule, manipulează caractere sau testează date.) complexă este creată prin combinarea a două expresii simple cu operatorul And sau Or. O expresie complexă are una dintre formele:

ExpresieSimplă And ExpresieSimplă

sau

ExpresieSimplă Or ExpresieSimplă

O expresie complexă este deplin sau parțial optimizabilă, în funcție de operatorul utilizat pentru a combina expresiile simple și dacă una sau ambele expresii simple sunt optimizabile. O expresie complexă este optimizabilă Rushmore dacă toate cele trei condiții care urmează sunt adevărate:

 Notă   Aveți posibilitatea să optimizați indexuri multiple, dacă interogați câmpurile indexate în ordinea în care acestea apar în fereastra Indexuri (Fereastra indexuri: Într-o bază de date Access, fereastra în care se vizualizează sau se editează indexurile unui tabel, sau în care se pot crea indexuri pentru câmpuri multiple.), începând cu primul câmp indexat și continuând cu câmpurile adiacente (până la 10 câmpuri, inclusiv). De exemplu, dacă aveți un index multiplu care conține câmpurile NumeFamilie și Prenume, aveți posibilitatea să optimizați o interogare asupra câmpului NumeFamilie sau NumeFamilie și Prenume, dar o interogare asupra FirstName nu poate fi optimizată.

Următoarele combinații diferite de expresii simple din criteriul de interogare indică nivelul de optimizare al interogării.

Interogare deplin optimizabilă (cu Rushmore)

  • (expresie optimizabilă) And (expresie optimizabilă)
  • (expresie optimizabilă) Or (expresie optimizabilă)

Rezultatele interogării sunt parțial optimizabile (fără Rushmore)

  • (expresie optimizabilă) And (not expresie optimizabilă)

Rezultatele interogării nu sunt optimizabile

  • (not expresie optimizabilă) And (not expresie optimizabilă)
  • (not expresie optimizabilă) Or (not expresie optimizabilă)
  • Not (expresie optimizabilă)
  • Not (not expresie optimizabilă)

De asemenea, aveți posibilitatea să utilizați paranteze pentru a grupa combinații de expresii simple. Regulile precedente se aplică, de asemenea, combinațiilor de expresii grupate între paranteze.

Odată ce ați combinat expresii simple optimizabile în expresii complexe, aceste expresii complexe, la rândul lor, pot fi combinate pentru a forma expresii și mai complexe, care sunt probabil optimizabile, conform regulilor precedente.

Aceste exemple presupun că ați creat indexuri pentru câmpurile NumeFamilie și DataAngajare (expresiile simple care le utilizează sunt optimizabile) dar nu și pentru câmpurile InitialaMedie sau Prenume (expresiile simple care care le utilizează nu sunt optimizabile). Următoarele exemple de expresii simple combinate arată până unde este posibilă optimizarea rezultatelor.

Interogare deplin optimizabilă (cu Rushmore)

[LastName] = "Smith" And [Hire Date] < #12/30/90#
                  
[LastName] = "Smith" Or [Hire Date] < #12/30/90#
                  

Rezultatele interogării sunt parțial optimizabile (fără Rushmore)

[LastName] = "Smith" And [MiddleInitial] = "C"
                  
[FirstName] = "Terry" And [MiddleInitial] = "C"
                  

Rezultatele interogării nu sunt optimizabile

[LastName] = "Smith" Or [MiddleInitial] = "C"
                  
[FirstName] = "Terry" Or [MiddleInitial]= "C"
                  

AfișareSugestii generale

AfișareÎmbunătățirea performanței filtrului

Dacă listele din câmpurile din fereastra Filtrare după formular (Filtru după formular: Tehnică de filtrare a datelor care utilizează o versiune a formularului sau foii de date curente cu câmpuri vide în care se tastează valorile care să fie conținute în înregistrările filtrate.) sunt afișate într-un interval de timp prea mare sau dacă nu afișează valorile din tabelul de bază, aveți posibilitatea de a modifica performanța filtrării după formular pentru toate tabelele, interogările și formularele sau de a modifica performanța pentru un anume formular. În ambele cazuri, aveți posibilitatea de a împiedica afișarea în liste a valorilor câmpurilor din tabelul de bază, de a afișa în listă valorile de câmp pentru anumite tipuri de câmpuri indexate (index: Facilitate care accelerează căutarea și sortarea într-un tabel bazat pe valori cheie și poate impune unicitatea pentru rândurile dintr-un tabel. Cheia primară a unui tabel este automat indexată. Anumite câmpuri nu pot fi indexate datorită tipului lor de date.) sau neindexate sau de a modifica limita de înregistrări care determină dacă lista afișează valorile unui câmp.

AfișareÎmbunătățirea performanței filtrării după formular pentru toate tabelele, interogările și formularele bazei de date

Aceste setări afectează toate tabelele și interogările și toate controalele (control: Un obiect grafic al interfeței cu utilizatorul, cum ar fi o casetă text, o casetă de selectare, o bară de defilare sau un buton de comandă, care permit utilizatorului să controleze programul. Controalele sunt utilizate pentru a afișa date sau opțiuni, a executa o acțiune sau a face interfața cu utilizatorul mai ușor de citit.) casetă text a căror proprietate FiltruCăutare este setată ca Valoarea implicită a bazei de date.

  1. În meniul Instrumente, faceți clic pe Opțiuni.
  2. Faceți clic pe fila Editare/Căutare și apoi setați Setare implicită filtru după formular în concordanță cu performanța dorită.
    • Dacă afișarea listei de valori durează prea mult doar pentru câmpurile neindexate, încercați limitarea listelor la câmpurile indexate. Aveți posibilitatea de a efectua acest lucru prin golirea casetelor de selectare Câmpuri locale neindexate și Câmpuri ODBC. Dacă afișarea listelor durează prea mult pentru câmpurile indexate, goliți și caseta de selectare Câmpuri locale indexate, deoarece sunt prea multe înregistrări în indexuri pentru ca listele să fie afișate rapid.

 Notă   Dacă utilizați același câmp neindexat în mod repetat, luați în considerare indexarea lui pentru a îmbunătăți filtrarea și alte operații de căutare pentru acel câmp.

  • Dacă listele nu afișează valorile din câmpurile indexate sau neindexate, verificați Afișare listă de valori în pentru a vă asigura că sunt selectate casetele corespunzătoare sau încercați să creșteți numărul din caseta Nu se afișează liste în care numărul înregistrărilor citite depășește astfel încât să fie mai mare ca sau egal cu numărul maxim de înregistrări din orice câmp neindexat din tabelul de bază.

AfișareÎmbunătățirea performanței filtrării după formular pentru un anume formular

Pentru fiecare control (control: Un obiect grafic al interfeței cu utilizatorul, cum ar fi o casetă text, o casetă de selectare, o bară de defilare sau un buton de comandă, care permit utilizatorului să controleze programul. Controalele sunt utilizate pentru a afișa date sau opțiuni, a executa o acțiune sau a face interfața cu utilizatorul mai ușor de citit.) casetă text dintr-un formular, aveți posibilitatea de a preciza dacă valorile stocate în câmp apar în lista sa din fereastra Filtrare după formular.

  1. Deschideți un formular în vizualizare proiect (Vizualizare proiect: O vizualizare care afișează proiectul următoarelor obiecte de bază de date: tabele, interogări, formule, rapoarte și macrocomenzi. În Vizualizare proiect se pot crea obiecte de bază de date noi și se poate modifica proiectul obiectelor existente.).
  2. Afișați foaia de proprietăți pentru orice control casetă text.

AfișareCum?

  1. Deschideți un tabel, o interogare, un formular, un raport sau o pagină de acces la date (pagină de acces date: O pagină Web, publicată din Acces, care are o conexiune la o bază de date. Într-o pagină de acces date se vizualizează, se adăugă, se editează și se manipulează datele stocate în baza de date. Este posibil ca o pagină să conțină, de asemenea, date din alte surse, cum ar fi Excel.) în Vizualizare proiect (Vizualizare proiect: O vizualizare care afișează proiectul următoarelor obiecte de bază de date: tabele, interogări, formule, rapoarte și macrocomenzi. În Vizualizare proiect se pot crea obiecte de bază de date noi și se poate modifica proiectul obiectelor existente.).
  2. Se deschide foaia de proprietăți optând pentru una din următoarele variante:

Selector de formular sau raport

Explicație1 Selector de formular sau raport

Selector de secțiune

Explicație1 Selector de secțiune

  • Pentru o secțiune a unei pagini de acces la date, se face dublu clic pe bara secțiunii.

Bara de secțiune într-o pagină de acces la date

Explcație1  Bara de secțiune 

  1. În foaia de proprietăți, faceți clic pe proprietatea pe care doriți să o setați, iar apoi optați pentru una din următoarele variante:

AfișareSfaturi

  • Pentru a obține Ajutor pentru orice proprietate din caseta de proprietăți, se face clic pe proprietate și apoi se apasă F1.
  • Dacă este necesar mai mult spațiu pentru a introduce sau edita o setare a unei proprietăți, se apasă SHIFT+F2 pentru a deschide caseta Panoramare.

 Notă   Dacă proprietatea SePermitModificăriProiect a unui formular este setată la Toate Vizualizările, se pot seta de asemenea proprietățile formularului în Vizualizare formular (Vizualizare formular: Vizualizare în care se afișează un formular pentru prezentarea sau acceptarea datelor. Vizualizarea formular este principalul mijloc de adăugare și modificare a datelor în tabele. În această vizualizare este posibilă și modificarea proiectului unui formular.) și Vizualizare foaie de date (Vizualizare foaie de date: O vizualizare care afișează datele dintr-un tabel, formular, interogare, vizualizare sau procedură stocată în format rânduri și coloane. În vizualizare foaie de date se pot edita câmpuri, adăuga și șterge date și căuta date.).

  1. În caseta de proprietății FiltruCăutare, setați proprietatea la valoarea care va duce la performanța dorită.
  • Dacă afișarea listei durează prea mult în fereastra Filtrare după formular, setați proprietatea FiltruCăutare fie la valoarea Niciodată, fie la valoarea Valoarea implicită a bazei de date și apoi faceți modificările corespunzătoare în caseta de dialog Opțiuni (meniul Instrumente).
  • Dacă lista din fereastra Filtrare după formular nu afișează valorile stocate în acel câmp, asigurați-vă că proprietatea FiltruCăutare nu este setată la valoarea Niciodată. Dacă proprietatea FiltruCăutare este setată la valoarea Valoarea implicită a bazei de date sau Întotdeauna, faceți modificările corespunzătoare în caseta de dialog Opțiuni (meniul Instrumente).

AfișareÎmbunătățirea performanței căutare și înlocuire

Un index ajută la găsirea și sortarea rapidă a înregistrărilor în Microsoft Access. Access utilizează indexuri într-un tabel în mod similar cu utilizarea indexului la o carte: pentru a găsi date, caută amplasarea datelor în index. Puteți crea indexuri bazate pe un singur câmp sau mai multe câmpuri. Indexurile bazate pe mai multe câmpuri permit distingerea înregistrărilor în care primul câmp poate avea aceeași valoare.

Alegerea câmpurilor pentru indexare

Veți dori indexarea câmpurilor în care efectuați frecvent căutări, câmpuri pe care le sortați, sau câmpuri pe care le uniți (asociere: O unire dintre un câmp dintr-un tabel sau o interogare și un câmp conținând același tip de date din alt tabel sau interogare. Asocierile spun programului cum sunt legate datele. Înregistrările care nu sunt potrivite pot fi incluse sau excluse, în funcție de tipul de asociere.) cu câmpuri din alte tabele prin interogări (interogare: Chestionare a datelor stocate în tabele sau cerere de efectuare a unei acțiuni asupra datelor. O interogare poate alătura date din mai multe tabele pentru a servi ca sursă de date pentru un formular sau raport.). Totuși, indexurile pot încetini anumite interogări de acțiune (interogare de acțiune: O interogare care copiază sau modifică date. Interogările de acțiune se împart în: interogări de adăugare, de ștergere, creare tabel și de actualizare. Ele se identifică prin semnul de exclamare (!) care apare lângă numele lor în Panoul de navigare.) cum ar fi interogări de anexare (interogare de adăugare: O interogare de acțiune care adaugă la finalul unui tabel existent înregistrările din setul de rezultate al unei interogări.), atunci când indexurile pentru multe câmpuri necesită actualizare în timpul execuției acestor operații.

Cheia primară (cheie primară: Unul sau mai multe câmpuri (coloane) ale căror valori identifică în mod unic fiecare înregistrare din tabel. O cheie primară nu permite valori Null și trebuie să aibă întotdeauna un index unic. Cheia primară este utilizată pentru a corela un tabel la cheile străine din alte tabele..) a unui tabel este indexată automat și nu puteți indexa un câmp al cărui tip de date (tip de date: Caracteristica unui câmp care determină ce tip de date poate conține. Tipurile de date includ Boolean, Întreg, Lung, Simbol monetar, cu simplă precizie, cu dublă precizie, Șir de caractere și Variant (implicit).) este un obiect OLE (Tip de date obiect OLE: Tip de date care se utilizează pentru obiecte create în alte aplicații care pot fi fi legate sau încorporate (inserate) într-o bază de date Access.). Pentru alte câmpuri, puteți efectua indexarea unui câmp dacă sunt aplicabile următoarele simultan:

  • Tipul de date al câmpului este Text, Număr, Monedă, sau Dată/Oră.
  • Preconizați căutarea valorilor memorate în câmp.
  • Preconizați sortarea valorilor în câmp.
  • Preconizați memorarea în câmp a multor valori diferite. Dacă multe dintre valorile câmpului sunt identice, indexul ar putea să nu accelereze în mod semnificativ interogările.

Indexuri pe câmpuri multiple

Dacă anticipați căutare sau sortare frecventă după două sau mai multe câmpuri în același timp, puteți crea un index pentru combinația de câmpuri respectivă. De exemplu, dacă stabiliți frecvent un criteriu pentru câmpurile Prenume și Nume în aceeași interogare, este logic să creați un index după câmpuri multiple pe ambele câmpuri.

La sortarea unui tabel după un index pe câmpuri multiple, Microsoft Access sortează întâi după primul câmp definit pentru index. Dacă există înregistrări cu valori duble în primul câmp, Microsoft Access sortează apoi după al doilea câmp definit pentru index și așa mai departe.

Într-un index pe câmpuri multiple, pot fi incluse până la 10 câmpuri.

AfișareÎmbunătățirea performanței formularului și subformularului

Există câteva lucruri care se pot face pentru ca formularul să execute mai repede.

AfișareSfaturi generale

AfișareSfaturi pentru formulare care conțin imagini și obiecte

  • Se folosesc bitmapurile și obiectele grafice economic.
  • Se transformă cadrele obiect nelegat, care afișează grafice, în controale de tip imagine.
  • Mai bine se folosesc bitmapuri alb-negru decât unele color.

AfișareSfaturi pentru formularele care conțin coduri

Un formular fără un modul formular (modul formular: Modul care cuprinde cod Visual Basic for Applications (VBA) pentru toate procedurile eveniment declanșate de evenimentele care apar într-un anumit formular sau în controalele sale.) încarcă mai repede și ocupă mai puțin spațiu pe disc. Dacă un formular sau controalele formularului nu folosesc proceduri eveniment (procedură eveniment: O procedură care se execută automat ca răspuns la un eveniment inițiat de utilizator sau de codul program, sau activat de sistem.), formularul nu necesită un modul formular.

Note

AfișareSfaturi pentru subformulare

AfișareÎmbunătățirea performanței casetei listă și a casetei combo

Există mai multe modalități de a determina execuția mai rapidă a casetelor listă, a casetelor combo și a casetelor listă verticală (casetă listă verticală: Un control al unei pagini de acces la date care, când se face clic pe el, afișează o listă din care se selectează o valoare. Nu se poate tasta o valoare într-o casetă listă verticală.):

 Notă   Expertul de interogare nu este disponibil în paginile de acces la date. Experții nu sunt disponibili într-o pagină de acces la date autonomă sau când indicați o pagină de acces la date la o bază de date alta decât cea curent deschisă. În ambele cazuri, va trebui să creați o casetă listă sau o casetă listă verticală cu mijloace proprii.

AfișareÎmbunătățirea performanței raportului și subraportului

Există câteva lucruri care se pot face pentru a imprima rapoartele mai repede.

AfișareSfaturi generale

AfișareSfaturi pentru rapoarte care conțin imagini și obiecte

AfișareSfaturi pentru subrapoarte

AfișareÎmbunătățirea performanței paginii de acces la date

Aveți câteva soluții pentru a face ca paginile de acces la date să fie încărcate mai rapid în Vizualizare pagină (Vizualizare pagină: O fereastră Access în care se poate răsfoi conținutul unei pagini de acces la date. Paginile au aceeași funcționalitate în Vizualizarea pagină ca în Microsoft Internet Explorer 5.0 sau ulterior.) sau în Microsoft Internet Explorer 5.01 cu Service Pack 2 (SP2) sau mai recent.

AfișareSfaturi generale

  • Când utilizați o pagină de acces la date în Microsoft Access, închideți toate obiectele bazei de date care nu sunt utilizate. Când utilizați o pagină de acces la date în Internet Explorer, închideți toate ferestrele care nu sunt utilizate.
  • În paginile de acces la date utilizate pentru introducerea de date, setați proprietatea DataEntry a paginii la True pentru ca pagina să deschidă o înregistrare necompletată.
  • Indexați toate câmpurile după care sortați, grupați sau filtrați.
  • Legați o pagină de acces la date la un fișier de date XML, pentru ca pagina să obțină date dintr-un fișier amplasat pe un client local, nu prin accesarea serverului de baze de date.

AfișareControale

  • Evitarea suprapunerii controalelor.
  • Utilizați controale extinse în loc de casete text pentru a afișa datele care nu sunt actualizabile — de exemplu, pentru a afișa valori de autonumerotare, valori derivate din expresii și hyperlink-uri.

Securitate  Utilizați controale legate sau controale hyperlink cu atenție. Utilizatori neautorizați pot insera text HTML dăunător în aceste controale. Procesarea acestui text fără validare sau modificare poate duce la pierderea unor informații personale sau a altor date. Pentru a împiedica dezvăluirea textului HTML conținut într-un control, codificați conținutul controlului.

AfișareImagini și obiecte

  • Utilizați fișiere bitmap și alte obiecte grafice cu cumpătare. Utilizați mai bine fișiere bitmap alb-negru decât color.

AfișarePagini grupate

  • Asigurați-vă că proprietatea ExpandedByDefault este setată la False pentru cel mai înalt nivel de grup. Setarea ei la False pentru cel mai înalt nivel de grup va grăbi alte interacțiuni după ce pagina este deschisă.
  • Asigurați-vă că proprietatea DataPageSize a nivelului de grup este setată la un număr mai mic sau la All. Cu cât numărul este mai mic, cu atât sunt mai rapid afișate înregistrările.
  • Într-o pagină care conține înregistrări cu o relație a unu la mai mulți, grupați înregistrările pe tabel, ci nu pe câmpuri sau expresii.
  • Într-o pagină bazată pe tabele cu o relație unu la mai mulți, legați fiecare secțiune la un tabel, nu la o interogare. Microsoft Access preia înregistrări dintr-un tabel numai când este nevoie pentru a le afișa în pagină. Cu o interogare, Access preia toate înregistrările înainte de a afișa înregistrări în pagină. Utilizați o interogare numai când doriți să limitați datele utilizate în pagină, să calculați valori agregate sau să efectuați o activitate posibilă numai într-o interogare.

AfișareDespre realizarea bazei de date ca fișier MDE pentru a îmbunătăți performanța

Dacă baza de date conține cod Microsoft Visual Basic for Applications (VBA) (Visual Basic pentru Aplicații (VBA): O versiune de limbaj pentru macrocomenzi a Visual Basic, utilizată pentru programarea aplicațiilor Windows și este inclusă în unele aplicații Microsoft.), salvarea bazei de date Microsoft Access (bază de date: O colecție de date relative la un anumit subiect sau scop. Într-o bază de date, informațiile despre o anumită entitate, cum ar fi un angajat sau o comandă, este aranjată în tabele, înregistrări și câmpuri.) ca fișier MDE compilează toate modulele, elimină tot codul sursă editabil și compactează baza de date destinație. Codul Visual Basic va continua să se execute, dar nu va fi vizualizat sau editat.

Securitate  Salvarea bazei de date ca fișier MDE contribuie la protejarea formularelor și rapoartelor fără să ceară utilizatorilor să se conecteze sau să creeze și să gestioneze conturile utilizator (cont de utilizator: Un cont identificat prin nume de utilizator și de ID personal (PID) care este creat pentru gestionarea permisiunilor utilizatorilor de a accesa obiecte ale bazelor de date într-un grup de lucru Access.) și permisiunile (permisiuni: Un set de atribute care specifică ce tip de acces are un utilizator la datele sau la obiectele dintr-o bază de date.) necesare pentru securitatea la nivel de utilizator (securitate la nivel de utilizator: Când se utilizează securitatea la nivel de utilizator într-o bază de date Access, un administrator al bazei de date sau proprietarul unui obiect' poate acorda utilizatorilor individuali sau grupurilor de utilizatori anumite permisiuni pe tabele, interogări, formulare, rapoarte și macrocomenzi.).

Baza de date va continua să funcționeze normal—-datele se actualizează și rapoartele se execută. Suplimentar, dimensiunea bazei de date se va reduce prin eliminarea codului, astfel utilizarea memoriei se optimizează, ceea ce va îmbunătăți performanța.

Salvarea bazei de date Access ca fișier MDE previne următoarele acțiuni:

AfișareConsiderații pentru modificarea formei formularelor, rapoartelor sau modulelor

Se păstrează o copie a bazei de date Access originale. Dacă este necesară modificarea formei formularelor, rapoartelor sau modulelor într-un fișier MDE, trebuie să se modifice baza de data Access originală, apoi să se salveze din nou ca fișier MDE. Salvarea unei baze de date Access care conține tabele ca fișier MDE creează complicații cu privire la versiunile diferite ale datelor dacă este necesar să se modifice ulterior forma formularelor, rapoartelor sau modulelor. Din acest motiv, salvarea unei baze de date Access ca fișier MDE este cea mai convenabilă pentru baza de date interfață a unei aplicații front-end/back-end (aplicații front-end/back-end: Aplicație de bază de date constând dintr-un fișier bază de date „back-end” care conține tabele și copii ale unui fișier bază de date „front-end” care conține toate celelalte obiecte de bază de date cu legături la tabelele „back-end”.).

AfișareCodul nu mai utilizează securitatea la nivel de utilizator

AfișareConsiderații înainte de salvarea bazei de date ca fișier MDE

Unele restricții limitează salvarea bazei de date Access ca fișier MDE:

Suplimentar, dacă definiți securitatea cu parolă generică pentru baza de date sau cu parole la nivel de utilizator, înainte de salvarea unei baze de date Access ca fișier MDE, aceste caracteristici se vor aplica și fișierului MDE creat din acea bază de date. Dacă baza de date are securitatea definită cu parolă generică pentru baza de date sau cu parole la nivel de utilizator și intenționați să eliminați aceste caracteristici, este necesar să le eliminați înainte de salvarea bazei de date ca fișier MDE.

Pentru a salva ca fișier MDE o bază de date Access care a angajat securitatea la nivel de utilizator, este necesară îndeplinirea cerințelor următoare înainte de a trece la execuție:

AfișareDespre referințe și fișiere MDE

Dacă se creează un fișier MDE dintr-o bază de date Microsoft Access (.mdb) sau dintr-un program de completare (.mda) (componentă inclusă la cerere: Un program suplimentar care adaugă comenzi sau caracteristici particularizate în Microsoft Office.) care se referă la altă bază de date Access sau la alt program de completare, Access afișează un mesaj de eroare și nu termină operația. Pentru a salva ca fișier MDE baza de date care se referă la o altă bază de date, trebuie să salvați toate bazele de date din lanțul de referințe ca fișiere MDE, începând cu prima bază de date referită. După salvarea primei baze de date ca fișier MDE, este necesar să actualizați referința din următoarea bază de date pentru a indica noul fișier MDE, înainte de a o salva pe aceasta ca fișier MDE, și așa mai departe.

De exemplu, dacă Database1.mdb se referă la Database2.mdb, care se referă la Database3.mda, se procedează după cum urmează:

  1. Salvați Database3.mda ca Database3.mde.
  2. Deschideți Database 2.mdb și modificați referința sa astfel încât să indice noul fișier Database3.mde.
  3. Salvați Database2.mdb ca Database2.mde.
  4. Deschideți Database1.mdb și modificați referința sa astfel încât să indice noul fișier Database2.mde.
  5. Salvați Database1.mdb ca Database1.mde.

AfișareDespre salvarea unei baze de date reproduse ca fișier MDE

O bază de date reprodusă (fie o reproducere (reproducere: O copie a bazei de date care este membru al unui set de reproduceri și se poate sincroniza cu alte reproduceri din set. Datele modificate dintr-un tabel reprodus al unei reproduceri sunt trimise și aplicate celorlalte reproduceri.) fie un Coordonator de reproduceri (Coordonator de reproduceri: Singurul membru al setului de reproduceri în care se pot face modificări ale structurii bazei de date care se pot propaga în alte reproduceri.)) nu se salvează ca fișier MDE. Pentru a salva o bază de date reprodusă ca fișier MDE, întâi se elimină reproducerea (reproducere: Procesul de copiere a bazei de date astfel încât două sau mai multe copii să poată face schimb de date sau obiecte reproduse. Acest schimb se numește sincronizare.).

Odată ce o bază de date se salvează ca fișier MDE, nu se reproduce; reproducerea se recomandă numai în situații în care nu se mai fac modificări ulterioare în baza de date originală. Nu există nici un mod de a face modificări în forma formularelor, rapoartelor sau codului în fișierul Coordonator de reproduceri MDE, și modificările de formă făcute în baza de date originală nu se sincronizează (sincronizare: Procesul de actualizare a doi membri ai unui set de reproduceri transferând toate înregistrările și obiectele actualizate din fiecare membru. Doi membri ai unui set de de reproduceri sunt sincronizați când modificările din fiecare au fost aplicate celuilalt.) cu reproducerile MDE pre-existente. Din acest motiv, dacă este necesar să se facă o modificare formă într-un set de reproduceri (set de reproduceri: Coordonatorul de reproduceri și toate reproducerile care partajează aceeași formă a bazei de date și identificatorul unic al setului de reproduceri.) de fișiere MDE, se face modificarea în baza de date originală, se salvează din nou ca fișier MDE, apoi se creează și se repartizează un întreg set de reproduceri din fișierul MDE nou.

AfișareDespre compactarea unei baze de date Access

Microsoft Access combină compactarea și remedierea unui fișier tip Access (fișier Microsoft Access: Un fișier bază de date sau proiect. În Access 2007, obiectele și datele bazei de date se stochează în fișiere .accdb. Versiunile anterioare utilizează fișiere .mdb. Un fișier proiect Access nu conține date și se utilizează pentru conectarea la o bază de date SQL Server.) într-un singur proces.

AfișareCompactarea unui fișier tip Access

Dacă ștergeți date sau obiecte într-o bază de date Access (bază de date Microsoft Access: O colecție de date și obiecte (cum ar fi tabele, interogări sau formulare) care sunt grupate pe baza unui anumit subiect sau scop.) sau dacă ștergeți obiecte într-un proiect Access (proiect Microsoft Access: Un fișier Access care se conectează la o bază de date Microsoft SQL Server și se utilizează pentru a crea aplicații client/server. Un fișier proiect nu conține date sau obiecte bazate pe definiții de date, cum ar fi tabele și vizualizări.), fișierul poate deveni defragmentat și utiliza ineficient spațiul pe disc. Prin compactarea fișierului tip Access se creează o copie a fișierului și se rearanjează modul de memorare a fișierului pe disc. Prin compactarea unei versiuni anterioare a bazei de date Access aceasta nu va fi transformată în format Access2000-2003.

Compactarea optimizează atât performanța bazei de date Access cât și a proiectelor Access. Totuși, într-un proiect Access, compactarea nu afectează obiectele bazei de date (obiecte bază de date: O bază de date Access conține obiecte ca tabele, interogări, formulare, rapoarte, pagini, macrocomenzi și module. Un proiect Access conține obiecte ca formulare, rapoarte, pagini, macrocomenzi și module.) — cum ar fi tabele sau vizualizări — care se găsesc în baza de date a Microsoft SQL Server (bază de date Microsoft SQL Server: O bază de date compusă din tabele, vizualizări, indexuri, proceduri stocate, funcții și triggere. Baza de date se poate conecta la datele SQL Server utilizând ODBC sau creând un fișier proiect Access (*.adp).) și nu în proiectul Access.

Compactarea nu afectează numerotarea automată într-un proiect Access. Totuși, într-o bază de date Access, dacă ați șters înregistrări de la sfârșitul unui tabel care conține un câmp AutoNumerotare (Tip de date AutoNumerotare: Într-o bază de date Microsoft Access, un tip de date de câmp care stochează automat un număr unic pentru fiecare înregistrare, pe măsură ce sunt adăugate la tabel. Există trei tipuri de numere ce pot fi generate: secvențiale, aleatoare și ID reproducere.), prin compactarea bazei de date se reinițializează valoarea AutoNumerotare; valoarea AutoNumerotare a următoarei înregistrări adăugate va fi cu una mai mare decât valoarea AutoNumerotare a ultimei înregistrări neșterse din tabel.

AfișareRemedierea unui fișier tip Access

În majoritatea cazurilor, Microsoft Access detectează la deschiderea unui fișier Access dacă acesta este deteriorat și oferă opțiunea de remediere imediată. Dacă fișierul tip Access curent conține o referință către alt fișier tip Access care este corupt, Access nu va încerca să remedieze celălalt fișier. În unele situații, Access poate să nu detecteze că un fișier este deteriorat. Dacă un fișier tip Access are o evoluție neregulată, compactați și remediați fișierul.

Access poate remedia:

Pentru a ajuta la prevenirea coruperii fișierelor Access, urmați aceste indicații:

  • Compactați și remediați fișierele tip Access în mod constant. Puteți preciza ca Access să compacteze automat un fișier la închidere.
  • Efectuați copii de rezervă ale fișierelor tip Access în mod regulat.
  • Evitați părăsirea Access în mod neașteptat. De exemplu, nu părăsiți Access brusc prin dezactivarea calculatorului. 
  • Dacă vă confruntați cu probleme de rețea, evitați utilizarea unei baze de date Access partajate amplasate pe un server de rețea până când problemele vor fi rezolvate. Dacă este posibil, mutați baza de date Access pe un calculator de unde să o puteți accesa local și nu din cadrul rețelei.

AfișareRemedierea fișierelor după închiderea neașteptată a Access

Dacă apare o problemă serioasă și cauzează închiderea Microsoft Access, atunci Access va reporni, va crea o copie a fișierului care a fost deschis și o va denumi numefișier_Backup.mdb sau numefișier_Backup.adp, unde numefișier reprezintă numele fișierului inițial. Dacă numefișier_Backup.mdb sau numefișier_Backup.adp există deja, Access va întreba pentru precizarea numelui de fișier. Access va încerca apoi să compacteze și să remedieze fișierul inițial.