PRECISO DE AJUDA

ELMO01 21/11/2012 21:51:28
#414557
Oi, galera,

Estou fazendo um programa e estou com problemas para fazer pesquisa no banco de dados MYSQL com duas variáveis diferentes. Abaixo linha de código utilizada no programa.

Str_Fun02 = [Ô]SELECT * FROM tab_funciona where Codigo_Empr = [ô][Ô] & NewCod2 & [Ô][ô] [Ô] And [Ô] Codigo_Func = [ô][Ô] & NewCods & [Ô][ô][Ô]

me retorna o seguinte erro:

Conversion from string [Ô]SELECT * FROM tab_funciona where[Ô] to type [ô]Long[ô] is not valid.

Como faço para contornar este erro.

Obrigado,
RICART 21/11/2012 22:33:20
#414559
Está havendo algum problema com sua variável Str_Fun02, ela é realmente string?

Esse erro ocorre quando vc executa a sql ou quando passa os valores para a variável?

Veja se o Codigo_Empr e o Codigo_Func são realmente Strings/Varchar na tabela.
ALEVALE 22/11/2012 08:22:55
#414564
Resposta escolhida
Tenta assim:

Str_Fun02 = [Ô] SELECT * FROM tab_funciona where Codigo_Empr = [Ô] & [Ô] [ô] [Ô] & NewCod2 & [Ô] [ô] [Ô] & [Ô] And Codigo_Func = [Ô] & [Ô] [ô] [Ô] & NewCods & [Ô] [ô] [Ô]
ELMO01 23/11/2012 20:45:46
#414692
Pessoal obrigado por ter respondido.

RICART - QUANTO A variável Str_Fun02, ela é realmente string, este erro se dá quando passa pela variável.

ALEVALE - do modo que vc fez ai dá certo mas quando chega ao dr_Func.HasRows fica false.

Abaixo parte do código que estou utilizando para vcs darem uma olhada.

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
[ô] Exclusão
If ListView1.SelectedItems.Count <> [Ô]0[Ô] Then
NewCods = ListView1.SelectedItems(0).SubItems(0).Text

[ô]Str_Fun02 = [Ô]SELECT * FROM tab_funciona where Codigo_Empr = [ô][Ô] & NewCod2 & [Ô][ô] [Ô] And [Ô] Codigo_Func = [ô][Ô] & NewCods & [Ô][ô][Ô] -> meu código
Str_Fun02 = [Ô]SELECT * FROM tab_funciona where Codigo_Empr = [ô][Ô] & NewCod2 & [Ô][ô] And Codigo_Func = [Ô] & [Ô] [ô] [Ô] & NewCods & [Ô] [ô] [Ô] -> ALEVALE com alguma modificação

Dim NewListas As New ListViewItem
Dim dr_Func As MySqlDataReader
Dim Con_func As New MySqlConnection(StrServFun01)
Dim Cmd_func As New MySqlCommand(Str_Fun02, Con_func)
Con_func.Open()
dr_Func = Cmd_func.ExecuteReader
Try
If dr_Func.HasRows Then
If dr_Func.Read Then
If dr_Func.Item([Ô]Status_Func[Ô]).ToString = [Ô]V[Ô] Then
If MsgBox([Ô]Confirma Exclusão deste Funcionário [Ô] & Trim(dr_Func.Item([Ô]Nomes_Func[Ô]).ToString) & [Ô] ?[Ô], MsgBoxStyle.YesNo, [Ô]Atenção..[Ô]) = vbYes Then

Dim Conn As New MySqlConnection(StrServFun01)
Conn.Open()

Dim Campos As String
[ô]
Campos = [Ô]Codigo_Func=@Codigo_Func, Status_Func=@Status_Func, User_Name=@User_Name,[Ô]
Campos += [Ô]User_Date=@User_Date, User_Time=@User_Time, User_Work=@User_Work, User_Node=@User_Node, User_Trav=@User_Trav[Ô]

Dim cSQL As String = [Ô]UPDATE tab_funciona SET [Ô] & Campos & [Ô] WHERE Codigo_Empresa=[Ô] & NewCods
Dim Cmd As New MySqlCommand(cSQL, Conn)

Cmd.Parameters.AddWithValue([Ô]@Codigo_Func[Ô], NewCods)
Cmd.Parameters.AddWithValue([Ô]@Status_Func[Ô], [Ô]F[Ô])
Cmd.Parameters.AddWithValue([Ô]@User_Name[Ô], NewUsuario)
Cmd.Parameters.AddWithValue([Ô]@User_Date[Ô], Date.Now)
Cmd.Parameters.AddWithValue([Ô]@User_Time[Ô], TimeString)
Cmd.Parameters.AddWithValue([Ô]@User_Work[Ô], [Ô]EXCLUSÃO[Ô])
Cmd.Parameters.AddWithValue([Ô]@User_Node[Ô], NewEndIp01)
Cmd.Parameters.AddWithValue([Ô]@User_Trav[Ô], NewUsuario)
Cmd.ExecuteNonQuery()
Conn.Close()
[ô]
Lista_Funcionarios()
[ô]
End If
Else
MsgBox([Ô]é obrigatório escolher um registro para Exclusão[Ô], MsgBoxStyle.OkOnly, [Ô]Atenção[Ô])
End If
Else
MsgBox([Ô]é obrigatório escolher um registro para Exclusão[Ô], MsgBoxStyle.OkOnly, [Ô]Atenção[Ô])
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Else
MsgBox([Ô]é obrigatório escolher um registro para Exclusão[Ô], MsgBoxStyle.OkOnly, [Ô]Atenção[Ô])
Limpa_Campos()
ListView1.SelectedItems.Clear()
End If
End Sub
ELMO01 23/11/2012 20:58:13
#414693
Pessoal deu certo, fiz algumas modificações e ficou blz.

Agradeço a atenção dada.

Obrigado,
Tópico encerrado , respostas não são mais permitidas