Fórum Problema no UPDATE - VB.NET - DataSet #8096
29/07/2009
0
Boa tarde,
Estou com uma aplicação em VB.NET usando um DATASET.
Tenho um Grid com dados e preciso fazer uma alteração em um campo e depois salvar.
Mas ocorre um erro: "Concurrency violation: the UpdateCommand affected 0 of the expected 1 records."
Eu fiz um video mostrando o erro. Fui executando o programa passo-a-passo ( F8).
Obrigado,
Ernany
http://video.devmedia.com.br/discovirtual/185374/ErroAtualizandoTabela4.zip
Estou com uma aplicação em VB.NET usando um DATASET.
Tenho um Grid com dados e preciso fazer uma alteração em um campo e depois salvar.
Mas ocorre um erro: "Concurrency violation: the UpdateCommand affected 0 of the expected 1 records."
Eu fiz um video mostrando o erro. Fui executando o programa passo-a-passo ( F8).
Obrigado,
Ernany
http://video.devmedia.com.br/discovirtual/185374/ErroAtualizandoTabela4.zip
Ernany
Curtir tópico
+ 0
Responder
Posts
30/07/2009
Luiz Maia
Ola Ernany, vi o flash que criou... Este problema é muito comum quando se usa o wizard para criar eventos de CRUD num DataSet Tipado.
Para esta questão, você tem duas possibilidades da ocorrência deste erro, acredito que a sua seja a segunda. 1 - Outro usuário pode estar tentando alterar algum registro na tabela em questão. Neste caso você pode usar algo do tipo de ISOLATION LEVEL antes de sua query.
Isto ocorre por que o DataApapter não encontra os dados originais para proceder com a alteração requisitada. Pode ser que usando o codigo abaixo resolva: try
{
customersTableAdapter.Update(northwindDataSet);
}
catch (DBConcurrencyException ex)
{
string customErrorMessage;
customErrorMessage = "Concurrency violation\n";
customErrorMessage += ex.Row[0].ToString(); // Add business logic code to resolve the concurrency violation...
}
2 - Outra questão é relativa à problemas no UpdateCommand. Se for o caso, sugiro você usar a ferramenta do SQL Profiler no servidor para observar
cada requisição. Com isto você saberá qual comando update esta gerando esta exceção e poderá alterar os parâmetros.
Aqui tem um exemplo que como usar o SQL Profile: http://msdn.microsoft.com/en-us/library/ms187929.aspx
Mas antes de tudo, sugiro vc recriar o DataSet Tipado e refazer a criação dos eventos do CRUD usando o wizard mesmo.
Abraços
Att
Luiz Maia
Responder
Gostei + 0
31/07/2009
Ernany
Boa Noite Luiz,
Vou fazer alguns testes e depois lhe dou um retorno.
Obrigado por enquanto,
Ernany
Vou fazer alguns testes e depois lhe dou um retorno.
Obrigado por enquanto,
Ernany
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)