Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Parametri in una query - Visual Basic 2008
Forum - C# / VB.NET - Parametri in una query - Visual Basic 2008

Avatar
ggaamm (Normal User)
Newbie


Messaggi: 13
Iscritto: 16/06/2012

Segnala al moderatore
Postato alle 21:11
Lunedì, 11/03/2013
Ciao a tutti, ho il seguente codice che mi permette di visualizzare in diverse textbox e attraverso una combobox dei numeri prelevati da un database di access:

In access tutti i campi che vedete qui sotto sono di tipo numerico e quello della data di tipo date.

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged

strsql = "Select * From Tabella2 where data = '" & ComboBox1.Text & "'"
Dim comando As New OleDb.OleDbCommand
Dim parametri As OleDbParameter
comando.CommandText = strsql
comando.Connection = conn
parametri = comando.Parameters.Add("?data", OleDbType.Date)
parametri = comando.Parameters.Add("?concid", OleDbType.Integer)
parametri = comando.Parameters.Add("?b1", OleDbType.Integer)
parametri = comando.Parameters.Add("?b2", OleDbType.Integer)
parametri = comando.Parameters.Add("?b3", OleDbType.Integer)
parametri = comando.Parameters.Add("?b4", OleDbType.Integer)
parametri = comando.Parameters.Add("?b5", OleDbType.Integer)
parametri = comando.Parameters.Add("?c1", OleDbType.Integer)
parametri = comando.Parameters.Add("?c2", OleDbType.Integer)
parametri = comando.Parameters.Add("?c3", OleDbType.Integer)
parametri = comando.Parameters.Add("?c4", OleDbType.Integer)
parametri = comando.Parameters.Add("?c5", OleDbType.Integer)

lettura = comando.ExecuteReader
If (lettura.Read() = True) Then ' sesto
txtid.Text = CStr(lettura("concid")) ' settimo
txtb1.Text = CStr(lettura("b1")) ' ect ...
txtb2.Text = CStr(lettura("b2"))
txtb3.Text = CStr(lettura("b3"))
txtb4.Text = CStr(lettura("b4"))
txtb5.Text = CStr(lettura("b5"))
txtc1.Text = CStr(lettura("c1"))
txtc2.Text = CStr(lettura("c2"))
txtc3.Text = CStr(lettura("c3"))
txtc4.Text = CStr(lettura("c4"))
txtc5.Text = CStr(lettura("c5"))
End If
comando.Dispose()
lettura.Close()
End Sub

Non capisco perchè il programma mi si blocca e mi si blocca qui:

lettura = comando.ExecuteReader

e mi dice:

OledbException non è stata gestita.

Dove sbaglio ? forse i parametri non sono corretti ?

Vi posto un'altra parte del codice così magari avete più informazioni al riguardo:

Sub riempicombo()
strsql = "Select* FROM Tabella2"
Dim comando As New OleDb.OleDbCommand
comando.CommandText = strsql
comando.Connection = conn
lettura = comando.ExecuteReader


While (lettura.Read())
ComboBox1.Items.Add(lettura("data"))

End While
comando.Dispose()
lettura.Close()
End Sub


Grazie in anticipo.

Saluti Antonio

Ultima modifica effettuata da ggaamm il 11/03/2013 alle 22:23


Antonio M. Grillo
PM Quote