Rallentamento delle prestazioni su tabelle collegate in Access 2002, Office Access 2003 e Office 2007

Traduzione articoli Traduzione articoli
Identificativo articolo: 275085 - Visualizza i prodotti a cui si riferisce l?articolo.
Per la una versione di Microsoft Access 2000 di questo articolo, vedere 261000.
Richiedente: Richiede la conoscenza dell'interfaccia utente a utente singolo computer.

Il contenuto di questo articolo Ŕ applicabile solo ai database Microsoft Access (mdb).

Espandi tutto | Chiudi tutto

Sintomi

Quando si apre una tabella collegata in Microsoft Office Access 2003 di Microsoft Access 2002. in Microsoft Office Access 2007 possibile visualizzazione di record correlati in un foglio dati secondario, il processo richiede notevolmente pi¨ avviene se si utilizza lo stesso database in Microsoft Access 97.

Cause

Questo comportamento si verifica se in un database contenente pi¨ relazioni esistono numerose tabelle collegate nelle, e la tabella che si sta aprendo la proprietÓ Nome foglio dati secondario impostata su [automatico] .

Risoluzione

Per risolvere questo problema, impostare proprietÓ Nome foglio dati secondario della tabella [Nessuno] . Questa operazione Ŕ eseguita manualmente o utilizzando il codice.

Impostazione della proprietÓ di nome foglio dati second manualmente

Per impostare manualmente la proprietÓ Nome foglio dati secondario , attenersi alla seguente procedura.

Nota Questa procedura funziona solo in Access 2002.
  1. Nel database esterno aprire una tabella in visualizzazione Struttura.
  2. Nel menu Visualizza , fare clic su ProprietÓ .
  3. Impostare la proprietÓ Nome foglio dati second [Nessuno] .
  4. Salvare e chiudere la tabella.

Impostare la proprietÓ di nome del foglio dati secondario per tutte le tabelle utilizzando il codice

╚ possibile utilizzare una funzione di applicazioni Visual Basic per impostare automaticamente la proprietÓ di Nome del foglio dati secondario per tutte le tabelle non di sistema in un database su [Nessuno] . Per effettuare questa operazione, attenersi alla seguente procedura:
  1. Aprire il database esterno.
  2. Nella finestra database, fare clic su moduli e quindi fare clic sul pulsante Nuovo .
  3. Nel menu Strumenti , fare clic su riferimenti . Assicurarsi che il Microsoft DAO 3.6 Object Library casella di controllo Ŕ selezionata e quindi fare clic su OK .
  4. Digitare o incollare il codice seguente nel nuovo modulo.
    Sub TurnOffSubDataSheets()
    Dim MyDB As DAO.Database
    Dim MyProperty As DAO.Property
    Dim propName As String, propVal As String, rplpropValue As String
    Dim propType As Integer, i As Integer
    Dim intCount As Integer
    
    On Error GoTo tagError
    
    Set MyDB = CurrentDb
    propName = "SubDataSheetName"
    propType = 10
    propVal = "[None]"
    rplpropValue = "[Auto]"
    intCount = 0
    
    For i = 0 To MyDB.TableDefs.Count - 1
        If (MyDB.TableDefs(i).Attributes And dbSystemObject) = 0 Then
            If MyDB.TableDefs(i).Properties(propName).Value = rplpropValue Then
                 MyDB.TableDefs(i).Properties(propName).Value = propVal
                 intCount = intCount + 1
            End If
        End If
    tagFromErrorHandling:
    Next i
    
    MyDB.Close
    
    If intCount > 0 Then
        MsgBox "The " & propName & " value for " & intCount & " non-system tables has been updated to " & propVal & "."
    End If
    
    Exit Sub
    
    tagError:
    If Err.Number = 3270 Then
        Set MyProperty = MyDB.TableDefs(i).CreateProperty(propName)
        MyProperty.Type = propType
        MyProperty.Value = propVal
        MyDB.TableDefs(i).Properties.Append MyProperty
        intCount = intCount + 1
        Resume tagFromErrorHandling
    Else
        MsgBox Err.Description & vbCrLf & vbCrLf & " in TurnOffSubDataSheets routine."
    End If
    End Sub
    
  5. Nella finestra immediata digitare il testo riportato di seguito e quindi premere INVIO per eseguire la funzione: Nota
    TurnOffSubDataSheets
    						
    che dopo un breve periodo di tempo, se tutte le tabelle non sono giÓ aggiornate, viene visualizzata una finestra di messaggio che indica che Ŕ stata aggiornata la proprietÓ SubDataSheetName per tabelle non di sistema <numberoftablesupdated> per [Nessuno] .

Informazioni

Office Access 2007, Access 2003, Access 2002 e Access 2000 consente di visualizzare record correlati di una tabella in un foglio dati secondario, questa funzionalitÓ non disponibile in Access 97. Per gestire le relazioni tra le tabelle correlate e principale, il sistema richiede un ulteriore sovraccarico pu˛ aumentare il tempo di risposta, in particolare quando un database include un numero elevato di tabelle collegate e un numero elevato di relazioni tra tabelle.

La tabella principale di una relazione uno-a-molti (la tabella sul lato "uno" dell'equazione) pu˛ avere la impostato su [Nessuno] , relativa proprietÓ di Nome del foglio dati secondario in questo caso non vengono visualizzati i fogli dati secondari. In o, la proprietÓ Nome foglio dati secondario pu˛ essere impostata sul nome di una particolare tabella correlata, o su [automatico] . Se la proprietÓ Ŕ impostata su [automatico] , si Ŕ in grado di selezionare il cui si desidera visualizzare l'indicatore espandere di un record nella tabella principale fare clic sui record della tabella correlata. Quando si imposta la proprietÓ su [automatico] , ci˛ pu˛ ridurre le prestazioni notevolmente, in particolare sui computer meno recenti, quando il database utilizza un numero elevato di tabelle collegate. Questo comportamento non si verifica quando tutte le tabelle sono presenti nello stesso database.

PoichÚ il problema Ŕ la riduzione delle prestazioni, fattori quali la velocitÓ del processore e disponibilitÓ delle risorse di sistema possono causare un database che esegue in modo adeguato in un computer per eseguire lentamente su un computer diverso.

Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia espressa o implicita. Questo include, ma non Ŕ limitato a, le garanzie implicite di commerciabilitÓ o idoneitÓ per uno scopo specifico. Questo articolo si presuppone che conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug di procedure. Tecnici del supporto Microsoft possono spiegare la funzionalitÓ di una particolare procedura, ma in nessun sono caso a modificare questi esempi per fornire funzionalitÓ aggiuntive o creare procedure per soddisfare specifiche esigenze.

ProprietÓ

Identificativo articolo: 275085 - Ultima modifica: giovedý 29 marzo 2007 - Revisione: 10.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Office Access 2007
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
Chiavi:á
kbmt kbbug kbperformance kbnofix KB275085 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 275085
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com