Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 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
  #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
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Una corrección:

Como year es una palabra reservada para paradox, las consultas SQL deberán ser:

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

De cualquier manera, te convendría cambiar el nombre del campo para evitar problemas.

// Saludos
Responder Con Cita
  #3  
Antiguo 11-01-2007
[basti] basti is offline
Miembro Premium
 
Registrado: ago 2004
Posts: 388
Poder: 23
basti Va por buen camino
Comprueba que cierras la tabla antes de finalizar la aplicación. De hecho, prueba a cerrarla justo después del código para rellenar el campo. Puede ser que la aplicación no cierre la tabla correctamente, entonces no se actualizarán los datos, sólo los verás mientras esté la aplicación funcionando. Y si copias, como dices, los datos a otra carpeta, estarán vacíos.
Responder Con Cita
  #4  
Antiguo 11-01-2007
gamez2809 gamez2809 is offline
Registrado
 
Registrado: ene 2007
Posts: 3
Poder: 0
gamez2809 Va por buen camino
Thankz

Que tal, gracias por sus respuestas, realmente cuando aprendi a programar en delphi no profundice mucho en base de datos, asi que lo que se hacer es casi puro instinto, jeje, gracias por el consejo con el codigo, y en cuanto lo de cerrar las tablas, en que consiste? es ponerlas en active:=false ? o no me enseñaron eso? Gracias por su ayuda!

Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Añadir datos desde una base de datos a un TListBox proyecto Conexión con bases de datos 1 21-11-2006 07:01:19
Guardar en 1 base de datos SQL, datos procedentes de 2 tablas distintas adaypr C++ Builder 1 05-09-2006 11:56:33
Entender lo que pasa con mis datos IVAND Conexión con bases de datos 6 03-02-2006 14:23:53
ubicar archivo, con datos sacados de base de datos Giniromero Varios 19 20-10-2005 16:23:02
Reto Para Expertos En Base De Datos Y Tipos De Datos.... (blob) frankmch Conexión con bases de datos 2 08-09-2003 19:44:52


La franja horaria es GMT +2. Ahora son las 15:29:54.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi