PDA

Ver la Versión Completa : mssql another user change the record


eureka
12-02-2007, 16:13:08
Hola a todos y gracias por adelantado,

Nos encontramos con una aplicación realizada con Delphi 5 que accede a una BDD SQL Server mediante una conexion MSSQL. Hasta ahora la conexión se realizaba a traves de un ODBC sin problemas.

Actualmente, en algunas ocaciones al intentar realizar un TQuery.Edit nos sale el siguiente error: "10259 mssql another user change the record ..". Hemos comprobado que ningun usuario bloquea el registro.

eureka
15-02-2007, 14:26:34
Por lo visto este error se produce por un conflicto entre los campos float de SQL Server y el BDE, ya que este ultimo solo opera con una precision de 15 decimales. Justo cuando se realiza la operación de edicion (.Edit), a través de SQL Monitor podemos ver como el sistema envia una SELECT COUNT(*) para verificar el estado del registro, esta select utiliza como parametros de busqueda algunos de los campos float.

Estos parecen los sintomas y las causas, pero no logro encontrar alguna manera de solucionar el problema sin modificar la base de datos y/o el código.

Conocen alguna opción de configuracion, parametro... para solucionar la problemática?

Byfed
21-02-2007, 18:55:00
Hola,
yo he tenido problemas similares en alguna aplicación y se solucionaron poniendo la propiedad UpdateMode de la tabla en UpWhereKeyOnly en lugar de UpWhereAll, como viene por defecto.


Pruebalo, a ver si hay suerte.

saludos.