Query di accodamento

di il
6 risposte

Query di accodamento

Salve a tutti, ho iniziato da poco ad addentrarmi in access, il mio problema è:come posso estrarre un record da una tabella A ed inserirlo tra altri due in una tabella B?premetto che ambedue le tabelle hanno la medesima struttura.Grazie.

6 Risposte

  • Re: Query di accodamento

    Apri una nuova query, aggiungi la tabella da cui prelevare il record, estrai tutti i campi (non usare l'asterisco), scegli un criterio di selezione per trovare il record, poi da Query nel menu seleziona "query di accodamento", nella finestra scegli la tabella al quale accodare il record e poi premi il tasto esegui.

    Mic
  • Re: Query di accodamento

    Ti ringrazio, ma non ho ottenuto il risultato sperato.
    probabilmente non mi sono espresso nel migliore dei modi,in pratica ciò che voglio ottenere è una cosa del genere:

    ---tabella A---
    COGNOME
    pippo
    topolino
    pluto

    ---tabella B---
    COGNOME
    qui
    quo
    qua

    supponiamo che voglia spostare "qui" dalla tabella B alla tabella A, più precisamente tra "pippo" e "topolino", come dovrei fare?
    grazie e spero di essere stato più esaudiente di prima.
  • Re: Query di accodamento

    Se vuoi aiuto mostrami la struttura della tabella e fammi un esempio pratico.
    Ciao.

    Mic
  • Re: Query di accodamento

    Allora la struttura della tabella A è:

    nome campo-----tipo dati
    cognome testo
    nome testo
    data nascita data/ora

    la stessa struttura ce l'ha la tabella B.
    ora nella tabella A ho un individuo che devo eliminare da detta tabella e collocarlo tra 2 nomi della tabella B.
  • Re: Query di accodamento

    Ci sarebbe una contraddizione per la teoria dei database relazionali... in pratica la posizione reale della riga non dovrebbe essere influente.... è per questo che si chiama "accodamento" e non "inserimento arbitrario".
    Se proprio ti serve far uso del concetto "posizione" devi contemplarlo tra le colonne della tabella e sfruttarlo.

    nome,posizione
    ----------
    pippo, 1
    topolino,2
    pluto,3

    nome,posizione
    --------
    qui,1
    quo,2
    qua,3

    Decisa la posizione di nuovo "qui" e cioè 2, aggiornare tutte le righe già presenti con posizione > 2 al nuovo valore pari al vecchio +1, quindi inserito "qui, 2"; alla fine otterresti:

    nome,posizione
    -------------
    pippo,1
    topolino,3
    pluto,4
    qui,2

    che "ordinato" per posizione viene:
    nome,posizione
    -------------
    pippo,1
    qui,2
    topolino,3
    pluto,4


    L'altra soluzione senza la colonna "posizione" è creare una nuova terza tabella C dalla A + B, inserendo le righe di tabella A fino al punto che ti serve, poi inserire "qui" e quindi continuare ad inserire il resto di A, droppare A tramutare C in A. Questo per sfruttare il fatto che la sequenza temporale delle INSERT rispecchia poi le posizioni fisiche nella tabella, senza alcun ordinamento di colonna.

    Chip
  • Re: Query di accodamento

    Ti ringrazio chip, a livello concettuale ci sono, a livello pratico no.che sintassi dovrei usare?
Devi accedere o registrarti per scrivere nel forum
6 risposte