Ir para o conteúdo
  • 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

Mensagens Recomendadas

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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Editado por Caça
GeSHi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.