Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: rs da 2 tabelle

  1. #1
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916

    rs da 2 tabelle

    credo serva un join, ma non lo so usare...

    codice:
    set rs1 = server.CreateObject("adodb.recordset")
    strSQL1="SELECT idutente, data FROM servizio WHERE data = #"&strDataricerca&"#"
    rs1.open strSQL1, strConn, 0, 3
    devo collegare la tab sopra (servizio) con la tab(ci) dove ci sono i dati anagrafici e le 2 tabelle hanno in comune un campo solo che nella tabella (ci) il campo si chiama ID mentre nella tab (servizio) il compo si chiama idutente.

    devo ricavare in base alla data sulla tab (servizio) i dati della tabella (ci).

    mi potete aiutare??
    grazie!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  2. #2
    codice:
    strSQL1="SELECT idutente, data FROM servizio,ci WHERE servizio.data = #"&strDataricerca&"# and servizio.idutente = ci.id"

  3. #3
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    prima di tutto grazie!!



    però non da errore ma neanche nessun risultato in + non so perche ho dovuto aggiungere degli apicetti:

    codice:
    strSQL1="SELECT idutente, data FROM servizio,ci WHERE servizio.data = #"&strDataricerca&"# and servizio.idutente = 'ci.id'"
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  4. #4
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    cappero... ecco perche!!

    il campo idutente è formato testo!
    mentre il campo ci.id è un contatore!

    come rimedio?
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  5. #5
    O metti di tipo INT il campo idutente, o fail il CAST del dato trasformandolo da stringa a intero . . .

    In access non sò il comando mi spiace

  6. #6
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    ok, ho modificato il campo nel db!

    ma adesso cè una cosa che non mi quadra...

    codice:
    set rs2 = server.CreateObject("adodb.recordset")
    strSQL2="SELECT idutente, data FROM servizio,ci WHERE servizio.data = #"&strDataricerca&"# and servizio.idutente = ci.id"
    rs2.open strSQL2, strConn, 0, 3
    
    do while not rs2.eof
    response.Write(rs2("idutente"))
    utenti = rs2("idutente")
    rs2.movenext
    loop
    facendo così dovrei avere tutti gli idutente che presentano quella data... ma in realtà me ne mostra solo 1!
    come mai??


    grazie!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  7. #7
    controlla come access vuole le date , ovvero se prima vuole il giorno e poi il mese o viceversa . . .



    Può darsi che legge mese/giorno/anno quando tu invece gli passi giorno/mese/anno oppure viceversa . . .

    Controlla

  8. #8
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da DarioN1
    controlla come access vuole le date , ovvero se prima vuole il giorno e poi il mese o viceversa . . .



    Può darsi che legge mese/giorno/anno quando tu invece gli passi giorno/mese/anno oppure viceversa . . .

    Controlla
    ho controllato, ed è giusto!

    ci sono nel db 2 idutente con la stessa data, ma segna solo il primo!

    pare quase un problema di ciclo!

    riposto il codice:

    codice:
    set rs2 = server.CreateObject("adodb.recordset")
    strSQL2="SELECT idutente, data FROM servizio,ci WHERE servizio.data = #"&strDataricerca&"# and servizio.idutente = ci.id"
    rs2.open strSQL2, strConn, 0, 3
    
    do while not rs2.eof
    response.Write(rs2("idutente"))
    utenti = rs2("idutente")
    rs2.movenext
    loop
    'serve dopo...
    set rs1 = server.CreateObject("adodb.recordset")
    strSQL1="SELECT * FROM ci WHERE id = "&utenti&""
    rs1.open strSQL1, strConn, 0, 3
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  9. #9
    'utenti' viene riazzerato ad ogni giro, ovvio che contenga solo l'ultimo...

  10. #10
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da optime
    'utenti' viene riazzerato ad ogni giro, ovvio che contenga solo l'ultimo...
    :master:
    e come faccio a prelevare tutti i campi che risultano dal ciclo?
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.