COMANDO UPDATE BD MYSQL

KURTGU 08/04/2011 22:04:38
#370893
Pessoal gostaria de atualizar um campo de um bd mysql, de uma tabela chamada login....


Gostaria de ao logar no meu projeto ele mude no bd login, na tabela login o campo ONLINE = 1 = online, e ao sair ele mude pra ONLINE = 0 = off...

aqui o codigo pra logar no sistema.... se alguem puder poderia adicionar o comando update sendo que o primary key e o campo nome.....


Private Sub btn_ok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_ok.Click
Panel1.Enabled = False
[ô]_____________________________________________________________________________________________[ô]
[ô]Tentar se conectar ao banco de dados se nao conseguir exibir a seguinte mensagem
Conexao.Conectar()
[ô]_____________________________________________________________________________________________[ô]
[ô]Se conseguir conexao com o banco de dados entao pesquisar o Usuario digitado
Dim myadpater As New MySqlDataAdapter
Dim sqlquery = [Ô]SELECT *FROM clientes Where usuario=[ô][Ô] & txtb_user.Text & [Ô][ô]and senha=[ô][Ô] & txtb_password.Text & [Ô][ô][Ô]
Dim mycomando As New MySqlCommand
[ô]____________________________________________________________________________________________[ô]
[ô]Se os campos estiver em branco entao exibir a seguinte mensagem
If txtb_user.Text = [Ô][Ô] Or txtb_password.Text = [Ô][Ô] Then
MsgBox([Ô]Preencha todos os campos[Ô])
Panel1.Enabled = True
Conexao.Desconectar()
Else
[ô]____________________________________________________________________________________________() [ô]
[ô] se os campos estiver preenchidos corretamente passar para o proximo codigo
Conexao.Conectar()
mycomando.Connection = Conexao.GetConexao
mycomando.CommandText = sqlquery
myadpater.SelectCommand = mycomando
Dim myData As MySqlDataReader
myData = mycomando.ExecuteReader()
[ô]_____________________________________________________________________________________________[ô]
[ô] Pesquisar usuario na tabela se nao existir exibir mensagem e som
If myData.HasRows = 0 Then
MsgBox([Ô]Usuario ou Senha Invalidos[Ô])
Panel1.Enabled = True
Conexao.Desconectar()
[ô]_______________________________________________________________________________________________[ô]
[ô]Pesquisar o usuario na tabela se existir exibir Menu Principal
Else
myData.Read()
If myData.GetString([Ô]online[Ô]) = True Then
MsgBox([Ô]Conta Já Esta Logada[Ô])
Panel1.Enabled = True
ElseIf myData.GetString([Ô]banido[Ô]) = True Then
MsgBox([Ô]Usuario Banido[Ô])
Panel1.Enabled = True
Else
MainForm.NICKNAME = myData.GetString([Ô]usuario[Ô])
MainForm.PASSWORD = myData.GetString([Ô]senha[Ô])
Encerrar = False
myData.Close()
Me.Close()
End If
End If
End If



desde ja agradeco pela ajuda....
JONATHANSTECKER 08/04/2011 22:21:50
#370895
Resposta escolhida
Faça um método para atualizar essa informação... Acredito que ficaria algo assim.:
    Protected Sub AtualizarStatus(ByVal pOnLine As Boolean)
Dim sqlquery As String = [Ô]UPDATE CLIENTES SET ONLINE = @ONLINE WHERE USUARIO = @USUARIO[Ô]
Dim mycomando As New MySqlCommand(sqlquery, Conexao)
mycomando.Parameters.AddWithValue([Ô]@USUARIO [Ô], txtb_user.Text)
mycomando.Parameters.AddWithValue([Ô]@ONLINE[Ô], pOnLine)
mycomando.ExecuteNonQuery()
mycomando.Dispose()
End Sub

Depois é só chamar esse método.
AtualizarStatus(True)
JONATHANSTECKER 09/04/2011 21:11:06
#370942
E ai? Deu certo?
KURTGU 09/04/2011 21:23:25
#370944
deu nao, ele nao da erro mais tambem nao atualiza.... o campo pedido.....to tentando modificar a partir do codigo que vc me passou....
TECLA 09/04/2011 23:01:21
#370958
Experimente alterar a linha abaixo...
[txt-color=#e80000]Dim sqlquery As String = [Ô]UPDATE CLIENTES SET ONLINE = @ONLINE WHERE USUARIO = @USUARIO[Ô][/txt-color]

...por esta:
[txt-color=#0000f0]Dim sqlquery As String = [Ô]UPDATE CLIENTES SET ONLINE=? WHERE USUARIO=?[Ô][/txt-color]
JONATHANSTECKER 15/04/2011 23:49:26
#371523
KURTGU, dê um UPDATE no tópico!
Tópico encerrado , respostas não são mais permitidas