Condividi tramite

Assegnare un valore ad un campo di una tabella

Anonimo
2011-11-03T18:25:06+00:00

Buonasera a tutti:

         ho creato una tabella TGiocatori così composta:

         Id_Giocatore          Contatore

         Nome                      Testo

         EMail                       Testo

         Ho creato un altra tabella TPartite così composta:

         Id_Partita                Contatore

         Giocatore1             Ricerca guidata in TGiocatori Id_Giocatore

         Giocatore2             Ricerca guidata in TGiocatori Id_Giocatore

         DataPartita             Data

         Ho creato un altra tabella TAppoggioAvvisoPartita così composta

         Giocatore1                   InteroLungo

         Giocatore2                   InteroLungo

         Data_Partita                 Data

         Nome_Giocatore1      Testo

         Nome_Giocatore2      Testo

         Mail_Giocatore1          Testo

         Mail_Giocatore2           Testo

Ho creato una query di accodamento che accoda alla tabella TAppoggioAvvisoPartita i dati della tabella TPartite sulla base di una data come segue:

TAppoggioAvvisoPartita Giocatore1                   il campo TPartite Giocatore1            

TAppoggioAvvisoPartita Giocatore2                   il campo TPartite Giocatore2

TAppoggioAvvisoPartita Data_Partita                il campo TPartite Data_Partita

Il mio problema è il seguente:

vorrei riempire i campi

         Nome_Giocatore1      Testo

         Nome_Giocatore2      Testo

         Mail_Giocatore1          Testo

         Mail_Giocatore2           Testo

della tabella TAppoggioAvvisoPartita sulla base dei valori contenuti nei campi

         Giocatore1                   InteroLungo

         Giocatore2                   InteroLungo

contenuti nella stessa tabella TAppoggioAvvisoPartita inserendo in valore predefinito la funzione DLookup come segue:

esempi campo Nome_Giocatore1      Testo

valore predefinito =DLookUp('Nome';'TGiocatori';"[TGiocatori]![Id_giocatore] = " & [Giocatore1])

a questo punto access mi manda un messaggio che dice "Il modulo di gestione di database non riconosce il campo 'Giocatore1' in una espressione di convalida o il valore predefinito nella tabella 'TAppoggioAvvisoPartita'.

Dove sbaglio?

Grazie a quanti mi possono aiutare.

Ciao!

Microsoft 365 e Office | Accesso | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

  1. Anonimo
    2011-11-04T17:58:39+00:00

    Ho provato anche a costruire una query in struttura inserendo le due tabelle TPartite e TGiocatori inserendo i campi Giocatore1 e Giocatore2 della tabella TPartite e il campo nome due volte della tabella TGiocatori con il seguente risultato:

    1         3           Flavio        Flavio

    quando invece dovrebbe essere

    1         3           Flavio        Stefano

    Visto che Giocatore1 è Flavio e Giocatore2 è Stefano.

    Ecco questo tentativo mi piace solo che devi caricare due volte la tabella TGiocatori e collegare  Giogatore1 di TPartite a id_Giocatore di Giocatori e Giocatore2 alla seconda Tabella Giocatori che verrà rinominata automaticamente TGiocatori_1

    La risposta è stata utile?

    0 commenti Nessun commento

3 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2011-11-05T13:48:22+00:00

    Perfetto!!!

    Grazie 1000!

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2011-11-04T17:25:19+00:00

    Ciao,

        ho provato ad inserire in una query il codice ma Access mi comunica un errore:

    Errore di sintassi (operatore mancante) nell' espressione della query 'TPartite.Giocatore1=TGiocatori.id_Giocatore INNER JOIN TGiocatori as TGiocatori_1 ON TPartite.Giocatore2=TGiocatori_1.id_Giocator'. (senza la e finale).

    Ho provato anche a costruire una query in struttura inserendo le due tabelle TPartite e TGiocatori inserendo i campi Giocatore1 e Giocatore2 della tabella TPartite e il campo nome due volte della tabella TGiocatori con il seguente risultato:

    1         3           Flavio        Flavio

    quando invece dovrebbe essere

    1         3           Flavio        Stefano

    Visto che Giocatore1 è Flavio e Giocatore2 è Stefano.

    Ti ringrazio anticipatamente.

    Ciao!

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2011-11-04T08:38:33+00:00

    Ciao Flavio,

    la prima domanda è:

    sei proprio sicuro che ti serva la tabella TAppoggioAvvisoPartita  essa contiene dati che possono essere facilmente ricavati dalle altre tabelle con una query senza necessità di creare tabelle con dati ridondanti, cosa che è quasi sempre sconsigliatissimo fare.

    Una query di questo tipo ti tira fuori le informazioni che ti servono:

    SELECT Giocatore1, Giocatore2, DataPartita, TGiocatori.Nome, TGiocatori.Mail, TGiocatori_1.Nome as NomeGiocatore2, TGiocatori_2.Mail as mailGiocatore2

    FROM TPartite Inner JOIN TGiocatori

    ON TPartite.Giocatore1=TGiocatori.id_Giocatore

    INNER JOIN TGiocatori as TGiocatori_1

    ON TPartite.Giocatore2=TGiocatori_1.id_Giocatore

    La risposta è stata utile?

    0 commenti Nessun commento