Ver Mensaje Individual
  #2  
Antiguo 11-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Primero que nada, bienvenido al Club y felicidades porque son pocos quienes en su primer mensaje usan las etiquetas correctas.

Ahora bien, en cuanto al asunto que preguntas pues no sé yo cuál pueda ser la razón de que desparezcan los datos, sobre todo porque comentas que ya los has visto con el Database Desktop.

Sin embargo, el código que muestras es un poco raro porque lo usual para recorrer una tabla es:

Código Delphi [-]
ventas.First;

while not ventas.EoF do
begin
  ...

  ventas.Next;
end;

en lugar de basarse en el número de registro. Por otro lado, yo creo que te convendría más usar un Query para la actualización, usando la siguiente consulta SQL:

Código SQL [-]
update ventas
set year = extract(year from fecha)

en el caso de qe fecha sea de tipo DATE. Si no, si es un alfanumérico, entonces puedes usar la función SUBSTR:

Código SQL [-]
update ventas
set year = substring(fecha from 7 for 4)

Cualquiera de las dos opciones, además de hacer la actulización en un sólo paso, puedes hacerla desde el SQL Explorer, de manera que ni siquiera tendrías que programar un procedimiento.

// Saludos
Responder Con Cita