Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/09/2004, 11:33
aguirre
 
Fecha de Ingreso: septiembre-2004
Mensajes: 35
Antigüedad: 20 años, 2 meses
Puntos: 0
demasiadas filas afectadas por la actualización?!?!

Trabajo con SQL Server 2000 sp3

Tengo una tabla con un campo clave (no admite claves duplicadas)

Realizo un select a la tabla de la forma:

SELECT * FROM tabla WHERE campo_clave='xxxx'

lo que me devuelve una única fila para actualizar algunos campos

Trabajo con VBasic de la forma:

sQRY = "SELECT * FROM tabla WHERE campo_clave='xxxx'"
Set rs = New ADODB.Recordset
rs.Open sQRY, conexionDB, adOpenStatic, adLockPessimistic, adCmdText
rs("un_campo") = Date
rs("campo_de_texto") = "Texto nuevo"
rs.Update
rs.Close
Set rs = Nothing

Muy de tarde en tarde (una vez cada dos meses, por decir algo) se presenta una situación de error que me tiene despistado. Al realizar una de estas actualizaciones se modifican un número aleatorio de registros, que aparecen con el contenido del campo_de_texto que se acaba de introducir.

Hemos detectado que en esta situación, después de realizado el rs.Update, aparece el error:

-2147467259
Información de columna clave insuficiente o incorrecta; demasiadas filas afectadas por la actualización

Dado que el select solo puede devolver un registro ¿por que se modifican varios?
¿Veis alguna causa que pueda provocar una situación así?
¿Alguna idea?