Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    ricerca in database

    devo fare la ricerca tramite vb di una parola contenuta nel database...questa parola ha come etichetta txtrictarga

    non capisco cosa c'è di sbagliato in questo codice.


    Private Sub cmdRicerca_Click()

    Dim SQL As String ' COMANDO SQL A SECONDA CHE SI TRATTI DI UNA INSERT O DI UN UPDATE
    Dim conferma As String ' MESSAGGIO DI CONFERMA (SECONDO LO STESSO CRITERIO DESCRITTO SOPRA)

    ' COME SOPRA...

    Set cn = New ADODB.Connection
    Set rs = New ADODB.Recordset

    cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\clienti.mdb"
    SQL = "SELECT * FROM tabella WHERE targa = '" & txtrictarga & "'"
    conferma = "Inserimento effettuato con successo"


    ' ESEGUO REALMENTE IL COMANDO SQL CHE ARRIVA ALL'ESTERNO DELLA CONDIZIONE
    cn.Execute (SQL)
    txtcognac.Text = rs.cognomeac
    txtnomeac.Text = rs.nomeac
    txtagenzia.Text = rs.agenzia
    txtcilindrata.Text = rs.cilindrata
    txtcodfisven.Text = rs.codicefiscalevend
    txtcodicefiscaleac.Text = rs.codicefiscaleac
    txtcognomeven.Text = rs.cognomevend
    txtcomunenascitaac.Text = rs.comunenascitaac
    txtcomuneven.Text = rs.comunenascitavend
    txtcostimanutenzione.Text = rs.costomanutenzione
    txtdataentrata.Text = rs.dataentrata
    txtdatanascitaac.Text = rs.datanascitaac
    txtdatanascitaven.Text = rs.datanascitavend
    txtdatauscita.Text = rs.datauscita
    txtmarca.Text = rs.marca
    txtmodello.Text = rs.modello
    txtnomeven.Text = rs.nomevend
    txtprezzovendita.Text = rs.prezzovendita
    txtresidenzaac.Text = rs.residenzaac
    txtresiven.Text = rs.residenzavend
    txttarga.Text = rs.targa
    txttelaio.Text = rs.telaio
    txttelefonoac.Text = rs.telefonoac
    txttelefonoven.Text = rs.telefonovend
    txtvalutazione.Text = rs.valutazione

    lblmessaggio.Caption = conferma

    cn.Close

    End Sub

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    E dove assegni il recordset di ritorno dalla query?

  3. #3
    ehhmm non capisco....su questo tipo di programmazione non sono tanto ferrato...ho cercato di prendere spunto da codice asp...ma qualcosa ho dimenticato...non riesco a capire dove

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Anche nella programmazione ASP ottieni un recordset dall'esecuzione della query ... come faresti in quel caso?

  5. #5
    ho fatto qualcosa del genere

    Private Sub cmdRicerca_Click()

    Dim SQL As String ' COMANDO SQL A SECONDA CHE SI TRATTI DI UNA INSERT O DI UN UPDATE
    Dim conferma As String ' MESSAGGIO DI CONFERMA (SECONDO LO STESSO CRITERIO DESCRITTO SOPRA)

    ' COME SOPRA...

    Set cn = New ADODB.Connection
    Set rs = New ADODB.Recordset

    cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\clienti.mdb"
    SQL = "SELECT * FROM tabella WHERE targa = '" & txtrictarga & "'"
    conferma = "Inserimento effettuato con successo"


    ' ESEGUO REALMENTE IL COMANDO SQL CHE ARRIVA ALL'ESTERNO DELLA CONDIZIONE
    cn.Execute (SQL)
    rs.MoveFirst
    Do Until rs.EOF
    txtcognac.Text = rs("cognomeac")
    txtnomeac.Text = rs("nomeac")
    txtagenzia.Text = rs("agenzia")
    txtcilindrata.Text = rs("cilindrata")
    txtcodfisven.Text = rs("codicefiscalevend")
    txtcodicefiscaleac.Text = rs("codicefiscaleac")
    txtcognomeven.Text = rs("cognomevend")
    txtcomunenascitaac.Text = rs("comunenascitaac")
    txtcomuneven.Text = rs("comunenascitavend")
    txtcostimanutenzione.Text = rs("costomanutenzione")
    txtdataentrata.Text = rs("dataentrata")
    txtdatanascitaac.Text = rs("datanascitaac")
    txtdatanascitaven.Text = rs("datanascitavend")
    txtdatauscita.Text = rs("datauscita")
    txtmarca.Text = rs("marca")
    txtmodello.Text = rs("modello")
    txtnomeven.Text = rs("nomevend")
    txtprezzovendita.Text = rs("prezzovendita")
    txtresidenzaac.Text = rs("residenzaac")
    txtresiven.Text = rs("residenzavend")
    txttarga.Text = rs("targa")
    txttelaio.Text = rs("telaio")
    txttelefonoac.Text = rs("telefonoac")
    txttelefonoven.Text = rs("telefonovend")
    txtvalutazione.Text = rs("valutazione")

    lblmessaggio.Caption = conferma
    rs.MoveNext
    Loop
    cn.Close

    End Sub

  6. #6
    ufffaaaaa mi dice che l'operazione nn è possibile perchè l'oggetto è chiuso

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Scusa ... ma perche' riproponi il codice che hai gia' mostrato?

    Ti ho detto che manca l'assegnazione al recordset e in particolare in questa linea

    cn.Execute (SQL)

    Come fa il programma a sapere che il risultato della query e' nell'oggetto rs ?

  8. #8
    nn è lo stesso ho cambiato l'ogetto rs e ho messo il ciclo

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da bbgol
    nn è lo stesso ho cambiato l'ogetto rs e ho messo il ciclo
    Ma che vuoi dire?

    Non sono stato chiaro nella mia risposta? Hai compreso quello che ti ho detto?

    Tra queste due linee

    cn.Execute (SQL)
    rs.MoveFirst

    che relazione c'e'?

    Come fa ad esserci il risultato della prima nel recordset rs?

  10. #10
    per caso ci manca rs.open?

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.