Pagina 3 di 6 primaprima 1 2 3 4 5 ... ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 53
  1. #21
    grazie mille
    allora io ho un campo codice tipo

    codice = "testo"

    ed una list1 = "nome"

    adesso vorrei fare una ricerca incrociata e trovare in tutte le 3 tabelle il codice "testo" e la parola "nome" che prendo dalla list1 e poi stampare i risultati in una list2 ed ho fatto cosi:

    codice:
    Dim sqlstring As String
    Dim db1 As Database
    Dim rs1 As Recordset
    sqlstring = "select * from tabella1, tabella2, tabella3 where codice='" & codice & "' AND tipo='" & List1 & "'"
    Set db1 = OpenDatabase(App.Path & "\database.mdb", False, False)
    Set rs1 = db1.OpenRecordset(sqlstring)
    Set Data2.Recordset = rs1
    If Not Data2.Recordset.EOF Then
    Do While Not Data2.Recordset.EOF
    
    List2.AddItem = (Data2.Recordset.Fields("cognome"))
    
    Data2.Recordset.MoveNext
    Loop
    Else
    MsgBox "Nessun record"
    End If
    
    rs1.Close
    in questo modo (sbagliato) secondo le mie scarse conoscenze di VB lui dovrebbe cercare dentro le 3 tabelle i due parametri passati e riportare il valore del campo cognome dentro la list2

    sapresti darmi qualche consiglio

    grazie ancora

    Meglio tacere e dare l'impressione di essere scemo, che aprire la bocca e togliere ogni dubbio



    ...........

  2. #22
    saro' piu' esplicito... non e' sufficiente scrivere "... WHERE CODICE= ..." ma (secondo quanto ti ho gia' spiegato) devi scrivere "... WHERE TABELLA1.CODICE= ...", naturalmente ripetendo la condizione per tutte le tabelle.

  3. #23
    Scusami quindi cosi

    codice:
    sqlstring = "select * from Tabella1, Tebella2 where Tabella1.codice='" & codice & "' AND Tabella2.codice ='" & codice & "' and Tabella1.tipo='" & List1 & "' and Tabella2.tipo='" & List1 & "'"

    ma poi per ricevere il risultato devo sempre scrivere cosi

    codice:
    List2.AddItem = (Data2.Recordset.Fields("cognome"))
    oppure devo specificare??


    Meglio tacere e dare l'impressione di essere scemo, che aprire la bocca e togliere ogni dubbio



    ...........

  4. #24
    se "cognome" sta in tutte le tabelle devi specificare. mettiti nei suoi panni.

  5. #25
    si cognome è un campo che sta in tutte le tabelle

    quindi devo fare cosi:

    codice:
    List2.AddItem = (Data2.Recordset.Fields("Tabella1.cognome"))
    List2.AddItem = (Data2.Recordset.Fields("Tabella2.cognome"))
    giusto???


    Meglio tacere e dare l'impressione di essere scemo, che aprire la bocca e togliere ogni dubbio



    ...........

  6. #26
    prova e sappimi dire

  7. #27
    ho provato ma mi restituisce "Nessun record" mentre i record nella tabella1 ci sono è in due che mancano....

    Meglio tacere e dare l'impressione di essere scemo, che aprire la bocca e togliere ogni dubbio



    ...........

  8. #28
    le ricerche dei codici vanno in OR tra di loro e in AND con i tipi (che tra di loro vanno in OR)

  9. #29
    o pravato ma niente


    codice:
    sqlstring = "select * from cat1, cat2 where cat1.codice='" & codice & "' OR cat2.codice ='" & codice & "' and cat1.tipo='" & List1 & "' OR cat2.tipo='" & List1 & "'"
    Meglio tacere e dare l'impressione di essere scemo, che aprire la bocca e togliere ogni dubbio



    ...........

  10. #30
    niente da fare
    Meglio tacere e dare l'impressione di essere scemo, che aprire la bocca e togliere ogni dubbio



    ...........

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 © 2026 vBulletin Solutions, Inc. All rights reserved.