Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

bocafeina

alterar dados do banco

Recommended Posts

AE galera

Olha só, eu tenho uma form que uso para add dados no banco de dados, até tudo bem. ai eu uso outra form para alterar os dados, só que nessa alteração ela ( primeiro registro é chamado de referencia) muda o primeiro registro do banco de dados, exemplo.

 

no banco de dados acess esta assim

referencia operação1 operação2 maquina1 maquina2

4444 bla bla bla bla

3333 blaa blaaa

 

Quando eu vou alterar o campo operação da 3333 e clico em salvar ele muda o 4444 para também 3333 e o bd fica com duas ref 3333

o comando que estou usando é o seguinte

 

tabela.edit

referencia = "referencia.text"

tabela.update

 

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites


Private Sub Salvar_Click()

If Textreferencia.Text = "" Then

MsgBox "Você deve digitar " & _

"alguma referencia:"

Textreferencia.Text = InputBox("Observações")

End If

 

Dim resultado As String

If Textreferencia.Text = "" Then

Textreferencia.Text = ""

End If

If oper1.Text = "" Then

oper1.Text = ""

End If

If oper2.Text = "" Then

oper2.Text = ""

End If

If maq1.Text = "" Then

maq1.Text = ""

End If

If maq2.Text = "" Then

maq2.Text = ""

End If

balanceamentos.Edit

 

balanceamentos("referencia") = Textreferencia.Text

balanceamentos("oper1") = oper1.Text

balanceamentos("oper2") = oper2.Text

balanceamentos("maq1") = maq1.Text

balanceamentos("maq2") = maq2.Text

balanceamentos.Update

resultado = MsgBox("Salvo com sucesso!", vbInformation)

limpa_campos

Unload Me

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, não entendi nada porque você fez isso:

 

If Textreferencia.Text = "" Then
Textreferencia.Text = ""
End If
If oper1.Text = "" Then
oper1.Text = ""
End If
If oper2.Text = "" Then
oper2.Text = ""
End If
If maq1.Text = "" Then
maq1.Text = ""
End If
If maq2.Text = "" Then
maq2.Text = ""
End If

Você vê se os campos estão vazios e estão você manda esvaziar de novo???

E assim, realmente em momento algum você está selecionando qual linha ele deve atualizar, sendo assim permanece no primeiro registro, no caso o 4444, por isso este está sempre sendo atualizado.

 

Para que o mude para o registro que deseja, utilize o método find.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.