Si vas a copiar

.. y pegar este post en tu web o blog personal, por favor te pido que coloques el link del post de donde lo copiastes:

Fuente:

Infracción de concurrencia: DeleteCommand o UpdateCommand en C# o VB.NET

27 de enero de 2011 1 comentario:
Si tienes este error:

Infracción de concurrencia: DeleteCommand o UpdateCommand afectó a 0 de los 1 registros esperados."


Ya sea agregando o editando un registro, es porque seguro esa tabla tiene un Id auto numérico y cuando intentas borrar o editar un registro recién guardado el nuevo Id no es retornado a menos de que lo hagas explícitamente, aqui hay un ejemplo de un registro recién agregado a un DataGridView:



Como puedes ver el Id auto numérico no es guardado

Yo intenté solucionarlo tratando de que sea lo mas sencillo posible y encontré que la mejor forma(en este caso para mi) fué, volver a cargar lo datos nuevamente después de agregarlo, algo así:

Pseudo-código:



Agregar_registro();
Recargar_registros(); // <-- Aqui se vuelve a actualizar



Esta es una manera que me funciona bien hasta los momentos si tienes una mejor por favor comentala

Publicado en tttony.blogspot.com

Publicar un comentario

1 comentario:

PedroV dijo...

El problema se presenta por la incompatibilidad entre los tipos de datos de .NET y la base de datos. La solución es ubicar en la BD el tipo de dato que está en conflicto y cambiarlo a otro. Generalmente los tipos que causan este tipo de problema son los numéricos (por ejemplo los tipo float)

Buscar en el Blog



PUBLICIDAD