Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/08/2010, 11:15
psreyes
 
Fecha de Ingreso: julio-2010
Mensajes: 9
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: comando open para abrir cursores

vale,

se trata de una validación de datos. Lo que pretendo es restar valores consecutivos de un mismo campo (campo de valores), de modo que si los valores aumentan mas o menos de un tope son datos incorrectos. Para ello tengo una tabla con 4 campos: "pk", "fecha", "Valores" y una columna "criterio" donde voy a validar los datos del campo valores, introduciendo 0 (la resta es mayor o menor del límite establecido) y 1 (el valor de la resta está dentro de los límites ).

Para restar los valores de los registros consecutivos del campo "valores" estoy intentando utilizar cursores. He hecho un borrador de script (sé que tendré muchos fallos), y el comando open no se señala. El script es:

Declare cursorHR_292 cursor for Select * from HR_292
Where fecha between 2006-06-23 And 2010-02-17
;
Open cursorHR_292
;
Fetch cursorHR_292 from HR_292 INTO pk, fecha, HR, criterio as act
While pk = 1
Begin
Select HR
Fetch Next cursorHR_292 from HR_292 as inc
Do inc - act as resta
End
;
Select resta from HR_292
where resta >= 50 Or resta <=-50
update HR_292 set criterio = 0
;
Close cursorHR_292
;

En el panel de salida me da el siguiente error:

ERROR: error de sintaxis en o cerca de «open»
LÍNEA 5: open cursorHR_292
^

gracias de antemano,

Psreyes