LusoRobótica - Robótica em Português
Software => Basic => Tópico iniciado por: magtaem em 30 de Junho de 2014, 21:26
-
Boas pessoal o seguinte código dá-me erro no executarcomando2, quando faz o = com o execute scalar.
O QUe estará de errado?
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TmMusica.Tick
If tbcodigotext = TextBox1.Text Then
Else
If TextBox1.Text = "" Then
Else
Try
Dim executarcomando As String
Dim executarcomando2 As String
Dim coneccao As New OleDbConnection
Dim comando As New OleDbCommand
Dim caminhoBD As String = My.Settings.caminhobd
coneccao.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =C:\Users\lol\MEOCloud\Pedro Magalhães\PAP\SOFTWARE\Home automation\Home Automation Voice Control\HomeVoiceControl\HomeVoiceControl\bin\Debug\bd\album.accdb"
coneccao.Open()
comando.Connection = coneccao
comando.CommandText = "SELECT id_album FROM album Where codigobarras=@codigo"
comando.Parameters.AddWithValue("@codigo", TextBox1.Text)
executarcomando = comando.ExecuteScalar
coneccao.Close()
coneccao.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =C:\Users\lol\MEOCloud\Pedro Magalhães\PAP\SOFTWARE\Home automation\Home Automation Voice Control\HomeVoiceControl\HomeVoiceControl\bin\Debug\bd\album.accdb"
coneccao.Open()
comando.Connection = coneccao
comando.CommandText = "SELECT caminho FROM caminho Where id_album='" & executarcomando & "'"
executarcomando2 = comando.ExecuteScalar
coneccao.Close()
wpm.URL = executarcomando2
TextBox1.Text = ""
' tbcodigotext = TextBox1.Text
Catch ex As SqlException
MsgBox(ex.Message)
End Try
End If
End If
End Sub
-
Eu diria que faltam ()
-
Não caro amigo, não é isso :)
O erro que retorna é : Tipo de dados incorreto na expressão de critérios.
-
A documentação da microsoft discorda, assim á primeira vista, mas vb não é comigo.
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar(v=vs.110).aspx (http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar(v=vs.110).aspx)
-
Também não sei grande coisa de VB e nem de SQL, mas o primeiro SELECT não retorna uma lista? Ao concatenar com uma string o VB porta-se bem? Mete um breakpoint antes do executescalar e confirma que o Commandtext está como deve.