Jump to content

Actualizar numa base de dados


Recommended Posts

Boas para todos!

Estou aqui com um pequeno problema na actualizaçao de um campo Sim/Nao na base de dados....

Estou a usar um check buton mas sempre que tento actualizar diz dá o seguinte erro "Tipo de dados incorrecto na expressão de critérios."

Ainda nao percebi como resolver isto, ainda estou fresco nisto de ligaçoes a base de dados, gostava de alguma ajuda se possivel.

Desde já o meu obrigado.

Pedro'O

Link to comment
Share on other sites

Private Sub btn_update_Click(sender As System.Object, e As System.EventArgs) Handles btn_update.Click
        ligacao.Open()
        sqltext = "Update Contactos set Nome='" & txt_nome.Text & "', Idade='" & txt_idade.Text & "', Telefone_Fixo= '" & txt_telefone.Text & "', Telemovel='" & txt_telemovel.Text & "', Morada='" & txt_morada.Text & "', Data_Nascimento= '" & dtp_data.Text & "', Tipo= '" & txt_topologia.Text & "', Carta_Conducao= '" & chk_cartaconducao.Checked & "' Where Email = '" & txt_Email.Text & "'"

        comando.CommandText = sqltext
        comando.Connection = ligacao
        comando.ExecuteNonQuery()
        MsgBox("Os dados foram actualizados com sucesso", MsgBoxStyle.Information, "Guardar")
        ligacao.Close()
    End Sub

Este é apenas o codigo do butao, se for preciso o resto eu publico

Pedro'O

Link to comment
Share on other sites

Boas

Tens de verificar se a checkbox está seleccionada ou não

Exemplo 1:

Private Sub btn_update_Click(sender As System.Object, e As System.EventArgs) Handles btn_update.Click 
Dim estado as Boolean = False
if  chk_cartaconducao.Checked then
      estado = true
end if

ligacao.Open()

sqltext = "Update Contactos set Nome='" & txt_nome.Text & "', Idade='" & txt_idade.Text & "', Telefone_Fixo= '" & txt_telefone.Text & "', Telemovel='" & txt_telemovel.Text & "', Morada='" & txt_morada.Text & "', Data_Nascimento= '" & dtp_data.Text & "', Tipo= '" & txt_topologia.Text & "', Carta_Conducao= '" & estado & "' Where Email = '" & txt_Email.Text & "'"

comando.CommandText = sqltext
comando.Connection = ligacao
comando.ExecuteNonQuery()
MsgBox("Os dados foram actualizados com sucesso", MsgBoxStyle.Information, "Guardar")
ligacao.Close()
End Sub 

Exemplo 2

Private Sub btn_update_Click(sender As System.Object, e As System.EventArgs) Handles btn_update.Click
ligacao.Open()

if  chk_cartaconducao.Checked then
      sqltext = "Update Contactos set Nome='" & txt_nome.Text & "', Idade='" & txt_idade.Text & "', Telefone_Fixo= '" & txt_telefone.Text & "', Telemovel='" & txt_telemovel.Text & "', Morada='" & txt_morada.Text & "', Data_Nascimento= '" & dtp_data.Text & "', Tipo= '" & txt_topologia.Text & "', Carta_Conducao= '" & True & "' Where Email = '" & txt_Email.Text & "'"
else
      sqltext = "Update Contactos set Nome='" & txt_nome.Text & "', Idade='" & txt_idade.Text & "', Telefone_Fixo= '" & txt_telefone.Text & "', Telemovel='" & txt_telemovel.Text & "', Morada='" & txt_morada.Text & "', Data_Nascimento= '" & dtp_data.Text & "', Tipo= '" & txt_topologia.Text & "', Carta_Conducao= '" & False & "' Where Email = '" & txt_Email.Text & "'" 
end if

comando.CommandText = sqltext
comando.Connection = ligacao
comando.ExecuteNonQuery()
MsgBox("Os dados foram actualizados com sucesso", MsgBoxStyle.Information, "Guardar")
ligacao.Close()
End Sub

A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.