Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

User LoL

[Resolvido] Violação de concorrência: UpdateCommand afectou 0 dos 1 registos esperados

Recommended Posts

User LoL

O meu problema é o seguinte, fiz uma conexão com o banco de dados em access, eu crio um registro e salvo, crio outro e salvo, quando eu volto para editar o primeiro aparece esse erro "Violação de concorrência: UpdateCommand afectou 0 dos 1 registos esperados" e depois disso só reiniciando o aplicativo pra conseguir salvar. Pesquisei e tentei vários métodos para corrigir mas não deu certo, inclusive tem um tópico com o mesmo problema que o meu http://www.portugal-a-programar.pt/topic/30177-violacao-de-concorrencia-updatecommand/ mas tentei das formas como foi passado la,e o erro continua.O código está todo ai:

Public Class Form1
   Private Ocupado As Boolean
   Private Sub PessoasBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PessoasBindingNavigatorSaveItem.Click
    If Ocupado = True Then Exit Sub
    Ocupado = True
    Me.Validate()
    Me.PessoasBindingSource.EndEdit()
    Try
	    Me.TableAdapterManager.UpdateAll(Me.DadosDataSet)
    Catch ex As Exception
	    MsgBox(Err.Description)
    End Try
    Ocupado = False
   End Sub
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    'TODO: esta linha de código carrega os dados para a tabela 'DadosDataSet.pessoas'. Você pode movê-la, ou removê-la, conforme necessário.
    Me.PessoasTableAdapter.Fill(Me.DadosDataSet.pessoas)
   End Sub
End Class

Share this post


Link to post
Share on other sites
Carlos Pais
Public Class Form1
Private Ocupado As Boolean
Private Sub PessoasBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PessoasBindingNavigatorSaveItem.Click
		If Ocupado = True Then Exit Sub
		Ocupado = True
		Me.Validate()
		Me.PessoasBindingSource.EndEdit()
		Try
				Me.TableAdapterManager.UpdateAll(Me.DadosDataSet)
		Catch ex As Exception
				MsgBox(Err.Description)
		End Try
		Ocupado = False


	   ' coloca esta linha no FIM DA GRAVAÇÃO DOS DADOS, Pois irá obrigara  a acutualizar a base de dados, e assim deixa de dar erro
		 Me.PessoasTableAdapter.Fill(Me.DadosDataSet.pessoas)




End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
		'TODO: esta linha de código carrega os dados para a tabela 'DadosDataSet.pessoas'. Você pode movê-la, ou removê-la, conforme necessário.
		Me.PessoasTableAdapter.Fill(Me.DadosDataSet.pessoas)
End Sub
End Class

Edited by Caça
GeSHi

Share this post


Link to post
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

×

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.