Visual Basic.NET - Excepción de Concurrencia

 
Vista:
sin imagen de perfil

Excepción de Concurrencia

Publicado por Alonso (4 intervenciones) el 11/08/2021 00:29:37
Hola buen día..

Tengo un problema con la actualización a una tabla Access desde una aplicacion en VB.NET. La excepción es: "Infracción de simultaneidad: UpdateCommand afectó a 0 de los 1
registros esperados" Utilizo arquitectura de datos desconectados de ADO.NET. Lo destacable es que este error ocurrió a partir de que importé los registros a la tabla de access desde Excell. Siendo que si agrego nuevos registros a la tabla desde la aplicación y después los modifico todo marcha normal, sólo con los registros importados ocurre el error.

Si alguien sabe porqué ocurre esto y como solucionarlo.. gracias..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Excepción de Concurrencia

Publicado por Phil Rob (1242 intervenciones) el 11/08/2021 08:26:10
Hola,

Cuando un UPDATE no puede se hacer, este es porque existe un error en el texto de la línea SQL o una incoherencia en la DB. Probablemente es este ultimo caso.

Primero, tiene que verificar si :
El registro existe realmente
Que su lleva de identificación es correcta (la parte WHERE del comando SQL tiene un valor que existe)
Si la tabla es unida con otra, el campo de la tabla "Madre" debe existir ante de escribir en la tabla "Hija".

Espero que este te ayudará ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Excepción de Concurrencia

Publicado por Alonso (4 intervenciones) el 12/08/2021 20:54:46
Hola. Te comento que todo lo que mencionas está validado. El caso es que este error sólo ocurre con los registros importados. Creo yo que Access marca estos registros como ocupados o algo asi y de ahi la supuesta simultaneidad, que no entiendo porque lo hace. Utilizo una BD local monousuario. Importé los registros por practicidad ya que es mucho trabajo estar dando de alta cada uno de ellos cuando son cientos. Si por ejemplo doy de alta registros directamente en la tabla en Access y después los modifico, con esos no pasa ningún error, de igual manera si doy de alta registros desde la aplicación y luego los modifico no pasa ningún error. Por último te menciono que para los procesos de inserción modificación y eliminación uso un CommandBuilder por lo que esos comandos se generan automáticamente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Excepción de Concurrencia

Publicado por Phil Rob (1242 intervenciones) el 13/08/2021 07:53:01
Hola,

Si comprendo bien, el problema existe solamente con los registros importados.
Entonces, puedes añadir varios registros "manualmente" en la DB y ver que estos poden ser modificados. Si este es el caso, tu análisis del problema es bien y te propongo de abrir la DB con Access et Compactar la DB. Este debería borrar las ligaturas inutiles.

Si problema existe todavía, envias la consulta SELECT que da los registros al CommandBuilder o tu proyecto completo (con algunos registros ficticios en la DB), lo miraré.

Que tenga un buen día ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Excepción de Concurrencia

Publicado por [email protected] (1 intervención) el 08/11/2021 03:40:39
Ese problema se genera a causa de una incompatibilidad de tipos numéricos entre el lenguaje de programación y la base de datos. La solución es revisar los tipos de datos numéricos de la BD cambiandolos a tipos compatibles
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar