Usuário com melhor resposta
COMO FAZER UM BOTÃO PARA ATUALIZAR UM REGISTRO ?

Pergunta
-
Boa tarde !
Estou criando um sistema de cadastro e gostaria de saber como eu altero um registro já inserido... exemplo: digito normalmente os dados e salvo ao clicar no botão, depois puxo essas informações de um datagridview (que já está funfando ^^) modifico algum campo e clico em salvar, ai ao invés de criar um novo (o que está acontecendo) ele atualiza e salva o mesmo registro.
Esse é meu código do botão salvar:
Private Sub btn_salvar_Click(sender As System.Object, e As System.EventArgs) Handles btn_salvar.Click 'VERIFICA SE EXISTEM CAMPOS VAZIOS' If txtEstip.Text = "" Or txtRamo.Text = "" Or txtOperadora.Text = "" Or txtGerencia.Text = "" Or txtUnidade.Text = "" Or txtPeriodo.Text = "" Or txtVitalicio.Text = "" Or txtAporte.Text = "" Or txtReajTecnico.Text = "" Or txtReajFinanceiro.Text = "" Or txtIndiceSol.Text = "" Or txtIndiceNego.Text = "" Or txtPremio.Text = "" Or txtMesaplic.Text = "" Or txtPeriodo.Text = "" Then MessageBox.Show("Preencha os campos necessários (*)") Else 'SE NÃO... SALVA O REGISTRO' Me.Tbl_HistoricoReajusteTableAdapter.Insert(txtIDCliente.Text, txtIDContrato.Text, txtEstip.Text, txtRamo.Text, txtOperadora.Text, txtGerencia.Text, txtUnidade.Text, txtPeriodo.Text, txtVitalicio.Text, txtAporte.Text, txtReajTecnico.Text, txtReajFinanceiro.Text, txtIndiceSol.Text, txtIndiceNego.Text, txtEconomia.Text, txtPremio.Text, txtVitalAtual.Text, txtPremioReaj.Text, txtNovoVital.Text, txtDifeVital.Text, txtEcoMensal.Text, txtEco12M.Text, txtHistObs.Text, txtMesaplic.Text) Me.Tbl_HistoricoReajusteTableAdapter.Update(Me.DataSet1.tbl_HistoricoReajuste) MsgBox("Reajuste da " + txtEstip.Text + " cadastrado com Sucesso !", MsgBoxStyle.Question, "Cadastro Salvo") End If End Sub
Estou usando VB e Banco de dados Access... Preciso dessa força, não manjo muita coisa.
Valeu !
- Editado Markus Proença sexta-feira, 21 de agosto de 2015 17:10 Correção de texto
Respostas
-
Markus a lógica para alterar um registro vc pega o id do registro e pelo comando sql vc altera :
"update tabela set campos where id registro = ao registro que vc guardou.
Junior
- Marcado como Resposta Marcos SJ sexta-feira, 21 de agosto de 2015 19:17
Todas as Respostas
-
Markus a lógica para alterar um registro vc pega o id do registro e pelo comando sql vc altera :
"update tabela set campos where id registro = ao registro que vc guardou.
Junior
- Marcado como Resposta Marcos SJ sexta-feira, 21 de agosto de 2015 19:17
-
Obrigado Junior, consegui criar e funcionou direitinho.
Ficou assim:
Dim strCon = My.Settings.ResumoApBDConnectionString Dim Conexao As New System.Data.OleDb.OleDbConnection(strCon) Dim sSQL As String = "UPDATE tbl_HistoricoReajuste SET IDCliente = '" & txtIDCliente.Text & "', IDContrato = '" & txtIDContrato.Text & "', Estipulante_principal = '" & txtEstip.Text & "', Ramo = '" & txtRamo.Text & "', Operadora_Seguradora = '" & txtOperadora.Text & "', Gerência = '" & txtGerencia.Text & "', Unidade_Negocio = '" & txtUnidade.Text & "', Periodo_Avaliacao = '" & txtPeriodo.Text & "' WHERE IDReajuste =" + txtIDReajuste.Text Dim cmd As New System.Data.OleDb.OleDbCommand cmd.CommandType = System.Data.CommandType.Text cmd.CommandText = sSQL cmd.Connection = Conexao Conexao.Open() cmd.ExecuteNonQuery() Conexao.Close()
Valeu !