Aggiungere record a una tabella utilizzando una query di accodamento

In questo articolo vengono illustrate la creazione e l'esecuzione di una query di accodamento. Utilizzare una query di accodamento quando è necessario aggiungere nuovi record a una tabella esistente utilizzando dati da altre origini.

Se necessario, è possibile utilizzare una query di aggiornamento per modificare i dati in un set di record esistente, ad esempio aggiornare il valore di un campo. È invece possibile utilizzare una query di creazione tabella per creare una nuova tabella da una selezione di dati oppure unire due tabelle in un'unica tabella. Per ulteriori informazioni sulle query di aggiornamento o di creazione tabella oppure per informazioni generali su altri metodi per aggiungere record a un database o modificare i dati esistenti, vedere la sezione Vedere anche.

 Nota   Non è possibile eseguire una query di accodamento in un Web browser. Se si desidera eseguire una query di questo tipo in un database Web, è prima necessario aprire il database tramite Access.

Contenuto dell'articolo


Panoramica

Una query di accodamento consente di selezionare record da una o più origini dati e di copiare i record selezionati in una tabella esistente.

Si supponga ad esempio di acquisire un database contenente una tabella dei potenziali nuovi clienti e che nel database utilizzato per la memorizzazione di questo tipo di dati sia già presente una tabella. Poiché si desidera memorizzare i dati in un'unica posizione, si decide di copiarli dal nuovo database nella tabella esistente. Per evitare di immettere manualmente i nuovi dati, è possibile copiare i record utilizzando una query di accodamento.

Vantaggi dell'utilizzo di una query di accodamento

L'utilizzo di una query per la copia dei dati consente di:

  • Accodare più record in un solo passaggio.    Se i dati vengono copiati manualmente, è in genere necessario eseguire più operazioni di copia e incolla. Se invece si utilizza una query, tutti i dati vengono selezionati e quindi copiati contemporaneamente.
  • Verificare le selezioni effettuate prima di copiarle.    È possibile verificare la selezione effettuata in visualizzazione Foglio dati e apportare eventuali modifiche necessarie prima di copiare i dati. Questo può risultare particolarmente comodo se la query include criteri o espressioni e sono necessari diversi tentativi prima di ottenere il risultato desiderato. Non è possibile annullare una query di accodamento. In caso di errore è necessario ripristinare il database da un backup o correggere l'errore, manualmente oppure tramite una query di eliminazione.
  • Utilizzare criteri per perfezionare la selezione.    È ad esempio possibile accodare solo i record dei clienti che vivono nella propria città.
  • Accodare record se alcuni dei campi delle origini dati non sono presenti nella tabella di destinazione.     Si supponga ad esempio che la tabella Clienti esistente contenga 11 campi e che la nuova tabella da cui effettuare la copia contenga solo nove di tali 11 campi. È possibile utilizzare una query di accodamento per copiare i dati dai nove campi corrispondenti e lasciare vuoti gli altri due campi.

Passaggi di base di una query di accodamento

Il processo di creazione di una query di accodamento è costituito dai passaggi di base seguenti:

  • Creare una query di selezione    Per iniziare, selezionare i dati che si desidera copiare. È possibile modificare la query di selezione in base alle esigenze ed eseguirla il numero di volte necessario per essere certi di selezionare i dati che si desidera copiare.
  • Convertire la query di selezione in una query di aggiornamento    Dopo aver effettuato la selezione, è possibile modificare il tipo di query in Di accodamento.
  • Scegliere i campi di destinazione per ogni colonna nella query di accodamento    In alcuni casi i campi di destinazione vengono selezionati automaticamente. È possibile modificare i campi di destinazione o selezionarli se non sono stati selezionati automaticamente.
  • Visualizzare l'anteprima ed eseguire la query per accodare i record    Prima di accodare i record è possibile passare alla visualizzazione Foglio dati per visualizzare un'anteprima dei record accodati.

 Importante   Non è possibile annullare una query di accodamento. È consigliabile eseguire il backup del database o della tabella di destinazione.

Torna all'inizio Torna all'inizio

Creare ed eseguire una query di accodamento

Contenuto della sezione


Passaggio 1: Creare una query per selezionare i record da copiare

  1. Aprire il database contenente i record che si desidera copiare.
  2. Nel gruppo Macro e codice della scheda Crea fare clic su Struttura query.

 Nota   Se si utilizza un database Web, nel gruppo Macro e codice fare clic su Oggetti client e quindi su Struttura query.

Verranno visualizzati Progettazione query e la finestra di dialogo Mostra tabella.

  1. Fare doppio clic sulle tabelle o sulle query contenenti i record che si desidera copiare e quindi fare clic su Chiudi.

Ogni tabella o query verrà visualizzata in una finestra in Progettazione query. Ogni finestra conterrà l'elenco dei campi di una tabella o query. Nella figura seguente viene illustrata una tabella tipica in Progettazione query.

Tabella in Progettazione query

Callout 1 Tabella Beni visualizzata in Progettazione query
Callout 2 Griglia di struttura della query
  1. Fare doppio clic su ogni campo che si desidera accodare. I campi aggiornati verranno visualizzati nella riga Campo nella griglia di struttura della query.

I tipi di dati dei campi della tabella di origine devono essere compatibili con quelli dei campi della tabella di destinazione. I campi di tipo Testo sono compatibili con la maggior parte degli altri tipi di campi. I campi di tipo Numerico sono compatibili solo con altri campi dello stesso tipo. Ad esempio, è possibile accodare numeri a un campo di tipo Testo ma non accodare testo in un campo di tipo Numerico.

È inoltre possibile utilizzare come campo un'espressione, ad esempio =Date() per restituire automaticamente la data odierna, nonché utilizzare espressioni con campi di tabella o di query nella griglia di struttura per personalizzare i dati selezionati. Ad esempio, se la tabella di destinazione contiene un campo in cui viene utilizzato il formato anno esteso e la tabella di origine contiene un campo di tipo Data/Ora normale, è possibile utilizzare la funzione DatePart con il campo di origine per selezionare solo l'anno.

Per aggiungere tutti i campi di una tabella rapidamente, fare doppio clic sull'asterisco (*) nella parte superiore dell'elenco dei campi di tabella. Nella figura viene illustrata la griglia di struttura con tutti i campi aggiunti.

Query contenente tutti i campi di tabella aggiunti

  1. È possibile, facoltativamente, immettere uno o più criteri nella riga Criteri della griglia di struttura. Nella tabella seguente sono inclusi alcuni criteri di esempio, di cui viene inoltre descritto l'effetto sui risultati di una query.
Criterio Effetto
> Restituisce tutti i numeri maggiori di 234. Per trovare tutti i numeri minori di 234, utilizzare < 234.
>= "Dellamore" Restituisce tutti i record da Dellamore alla fine dell'alfabeto.
Between #02.02.07# And #01.12.07# Restituisce le date dal 2 febbraio 2007 all'1 dicembre 2007, in base alla modalità ANSI-89. Se nel database vengono utilizzati caratteri jolly ANSI-92, utilizzare virgolette singole (') al posto dei cancelletti, ad esempio Between '02.02.07' And '01.12.07'.
Not "Germania" Trova tutti i record in cui il contenuto esatto del campo non corrisponde esattamente a "Germania". Il criterio restituirà i record contenenti altri caratteri oltre a "Germania", ad esempio "Germania (euro)" o "Europa (Germania)".
Not "T* Trova tutti i record ad eccezione di quelli che iniziano con T. Se nel database viene utilizzato il set di caratteri jolly ANSI-92, utilizzare il simbolo di percentuale (%) al posto dell'asterisco (*).
Not "T* Trova tutti i record che non terminano con t. Se nel database viene utilizzato il set di caratteri jolly ANSI-92, utilizzare il simbolo di percentuale al posto dell'asterisco.
In(Canada,Italia) In un elenco trova tutti i record che contengono Canada o Italia.
LIKE "[A-D]*" In un campo di testo trova tutti i record che iniziano con lettere da A a D. Se nel database viene utilizzato il set di caratteri jolly ANSI-92, utilizzare il simbolo di percentuale al posto dell'asterisco.
Like "*ar*" Trova tutti i record che includono la sequenza di lettere "ar". Se nel database viene utilizzato il set di caratteri jolly ANSI-92, utilizzare il simbolo di percentuale al posto dell'asterisco.
Like "Villa Dewe?" Trova tutti i record che iniziano con "Villa" e contengono una seconda stringa di cinque lettere in cui le prime quattro lettere sono "Dewe" e l'ultima lettera è sconosciuta (indicato dal punto interrogativo). Se nel database viene utilizzato il set di caratteri jolly ANSI-92, utilizzare il carattere di sottolineatura (_) al posto del punto interrogativo.
#02.02.07# Trova tutti i record che si riferiscono al 2 febbraio 2007. Se nel database viene utilizzato il set di caratteri jolly ANSI-92, includere la data tra virgolette singole anziché cancelletti (#), ad esempio '02.02.07'.
< Date( ) - 30 Restituisce tutte le date trascorse da oltre 30 giorni.
Date( ) Restituisce tutti i record contenenti la data corrente.
Between Date( ) And DateAdd("M", 3, Date( )) Restituisce tutti i record compresi tra la data corrente e i tre mesi successivi.
Is Null Restituisce tutti i record contenenti un valore Null, ovvero vuoto o non definito.
Is Not Null Restituisce tutti i record che contengono un valore.
"" Restituisce tutti i record che contengono una stringa di lunghezza zero. Le stringhe di lunghezza zero vengono utilizzate quando è necessario aggiungere un valore a un campo obbligatorio, ma non si conosce ancora il valore. In un campo, ad esempio, potrebbe essere necessario aggiungere un numero di fax, ma alcuni clienti potrebbero non disporre di apparecchi fax. In questo caso, immettere una coppia di virgolette doppie senza spazi inclusi ("") al posto del numero di fax.
  1. Nel gruppo Risultati della scheda Struttura fare clic su Esegui.
  2. Verificare che la query abbia restituito i record che si desidera copiare. Se è necessario aggiungere o rimuovere campi dalla query, tornare in visualizzazione Struttura e aggiungere i campi desiderati come indicato nel passaggio precedente oppure selezionare i campi indesiderati e quindi premere INVIO per rimuoverli dalla query.

Passaggio 2: Convertire la query di selezione in una query di accodamento

  1. Nel gruppo Visualizzazione della scheda Home fare clic su Visualizza e quindi su Visualizzazione Struttura.
  2. Nel gruppo Tipo di query della scheda Struttura fare clic su Accodamento.

Verrà visualizzata la finestra di dialogo Accodamento.

  1. In seguito, scegliere se accodare record a una tabella nel database corrente oppure a una tabella in un database diverso.

Eseguire una delle operazioni seguenti:

  • Nella finestra di dialogo Accodamento fare clic sul pulsante di opzione Database corrente, selezionare la tabella di destinazione nella casella combinata Nome tabella e quindi fare clic su OK.

-oppure-

  1. Nella finestra di dialogo Accodamento fare clic su Altro database.
  2. Nella casella Nome file immettere il percorso e il nome del database di destinazione.
  3. Nella casella combinata Nome tabella immettere il nome della tabella di destinazione e quindi fare clic su OK.

Passaggio 3: Selezionare i campi di destinazione

La modalità di selezione dei campi di destinazione dipende dalla modalità di creazione della query di selezione adottata nel Passaggio 1.

Se... In Access...
Sono stati aggiunti tutti i campi dalla tabella di origine o dalla query Tutti i campi della tabella di destinazione verranno aggiunti alla riga Accoda a nella griglia di struttura.
Sono stati aggiunti singoli campi per la query o per le espressioni utilizzate e i nomi dei campi delle tabelle di origine e di destinazione corrispondono I campi di destinazione corrispondenti verranno aggiunti automaticamente alla riga Accoda nella query.
Sono stati aggiunti singoli campi o espressioni utilizzate e nessuno dei nomi inclusi nelle tabelle di origine e di destinazione corrisponde I campi corrispondenti verranno aggiunti, mentre quelli non corrispondenti verranno lasciati vuoti.

Se i campi vengono lasciati vuoti, è possibile fare clic su una cella nella riga Accoda a e selezionare un campo di destinazione.

Nella figura viene illustrato come fare clic su una cella nella riga Accoda a e quindi selezionare un campo di destinazione.

Elenco a discesa nella riga Accoda a

 Nota   Se si lascia il campo di destinazione vuoto, la query non accoderà dati al campo.

Passaggio 4: Visualizzare l'anteprima ed eseguire la query di accodamento

  1. Per visualizzare in anteprima le modifiche apportate, passare in visualizzazione Foglio dati.

 Suggerimento   Per cambiare rapidamente visualizzazione, fare clic con il pulsante destro del mouse sulla scheda nella parte superiore della query e quindi fare clic sulla visualizzazione desiderata.

  1. Tornare in visualizzazione Struttura e quindi fare clic su EseguiIcona del pulsante per accodare i record.

 Importante   Non è possibile annullare i risultati di una query di accodamento.

Torna all'inizio Torna all'inizio

Impedire il blocco di una query da parte della modalità di disattivazione

Se si tenta di eseguire una query di accodamento e sembra che non accada niente, verificare se sulla barra di stato di Access viene visualizzato il messaggio seguente:

Azione o evento bloccato dalla modalità di disattivazione.

Per impedire il blocco della query da parte della modalità di disattivazione, è necessario attivare il contenuto del database. Utilizzare il pulsante Attiva contenuto nella barra dei messaggi per attivare la query.

 Nota   Quando si attiva la query di accodamento, è necessario attivare anche tutto il contenuto del database.

Per ulteriori informazioni sulla sicurezza di Access, vedere l'articolo Introduzione alla sicurezza di Access 2010 .

Torna all'inizio Torna all'inizio

 
 
Si applica a:
Access 2010