Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 37
  1. #1

    [VB2008 express] Query che non lavora come deve

    Ciao a tutti,

    ho apportato una serie di modifche e ora sembrerebbe che il codice funzioni. Purtroppo non è così.

    - nel database inserisco 5 campi ragione sociale: 1 2 3 4 5
    - salvo
    - aggiorno il form
    - vedo i dati salvati
    - provo a ricercare ad esempio la ragione sociale numero 3
    - il datagrid si svuota completamente

    posto il codice così qualche anima pia mi può dare qualche indicazione sull'errore:


    codice:
    Dim qr_ricercaragionesociale As String = "SELECT ragione_sociale FROM tblClienti WHERE [ragione_sociale] = '" & txtRicercaRagioneSociale.Text & "'"
    Dim Cn As New OleDbConnection(connectionString)
    Dim cmd As New OleDbCommand(qr_ricercaragionesociale, Cn)
    Try
      Cn.Open() 'apro la connessione
      TblClientiDataGridView.DataSource = cmd.ExecuteReader 'faccio eseguire la query
      Cn.Close() 'chiudo la connessione
    Catch ex As Exception
      MsgBox(Err.Description) 'se c'è un errore me lo dice
    End Try
    per completezza aggiungo anche la stringa di connessione

    codice:
    Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source = C:\Documents and Settings\Banco\Documenti\bellerofonte\bellerofonte\bellerofonte.mdb; "
    e segnalo che ho sostituito il DB con un file MDB
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  2. #2

  3. #3
    che se io ricerco la ragione sociale 3 il datagrid si svuota, invece dovrebbe riportare la riga dove ho la ragione sociale numero 3.
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma tu vuoi solamente la ragione_sociale come colonna?

    Altrimenti la query deve cominciare con

    SELECT *
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    ho provato a modificare la query con * ma non è cambiato nulla:

    codice:
    Dim qr_ricercaragionesociale As String = "SELECT * FROM tblClienti WHERE [ragione_sociale] = '" & txtRicercaRagioneSociale.Text & "'"
    Dim Cn As New OleDbConnection(connectionString)
    Dim cmd As New OleDbCommand(qr_ricercaragionesociale, Cn)
    Try
                Cn.Open()
                TblClientiDataGridView.DataSource = cmd.ExecuteReader
                Cn.Close()
            Catch ex As Exception
                MsgBox(Err.Description)
            End Try
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  6. #6
    Originariamente inviato da Neo996sps
    che se io ricerco la ragione sociale 3 il datagrid si svuota, invece dovrebbe riportare la riga dove ho la ragione sociale numero 3.
    vuoi il record con ragione_sociale='3' o il record che sta a riga 3?

  7. #7
    il record in cui la ragione sociale è uguale a 3
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Neo996sps
    ho provato a modificare la query con * ma non è cambiato nulla:
    Non e' che cambiava qualcosa ... una cosa sono le informazioni che devi avere restituire (con la SELECT), un'altra cosa e' il criterio di ricerca (per cui devi chiarire cosa deve contenere esattamente il campo ragione_sociale ...).
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Neo996sps
    il record in cui la ragione sociale è uguale a 3
    Ma 3 come stringa o come numero ?

    E che ragione_sociale e' 3 ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    allora, io inserisco 3 record: Mario, Massimo, Marco. Attualmente con la mia query, se io ricerco Massimo, il datagrid si svuota e non visualizza nulla, quando invece il datagrid dovrebbe farmi vedere la riga in cui la ragione sociale è uguale a Massimo
    Errare è umano, ma per fare veramente casino ci vuole la password di root

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.