Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Firebird problema con campos DATE (https://www.clubdelphi.com/foros/showthread.php?t=36817)

Mauro® 25-10-2006 16:07:46

Firebird problema con campos DATE
 
Hola todos, tengo un problema que me esta complicando. He buscado por el foro pero no encontré respuesta.
Hace muy poco que estoy trabajando con Firebird y mi problema es el siguiente, tengo una tabla "Ofertas" que contiene un campo "Fec_activo" del tipo Date. Quiero filtrar esta tabla para que me muestre solo los registros que contienen una fecha mayor que la del día en curso.
Lo hice de la siguiente manera:
ofertas.filter := 'fec_activo > ' + '''' + datetostr(date) + '''';
pero me da el siguiente error:
"Conversion error from string "25/10/2006"
Alguien podría darme una idea de porque me está dando este error?

Desde ya muchas gracias.
Saludos a todos.
Mauro.

jachguate 25-10-2006 16:14:39

Cuando trabajo con fechas desde delphi, en lugar de enviar una cadena con formato de fecha a la bd, prefiero usar un parámetro de tipo ftDate o ftDateTime. De esta manera, delphi se encarga de trasladar la fecha en el formato correcto que espera cada motor de base de datos.

En código, sería algo así:

Código Delphi [-]
  query.sql.text := 'Select * from tabla where fecha > :FechaInicio';
  query.ParamByName('FechaInicio').AsDateTime := dtpFechaInicio.Date;
  query.Open;

Si insistes en pasar la fecha como una cadena, tené en cuenta que firebird no reconoce el formato dd/mm/yyyy. Si reconoce mm/dd/yyyy y yyyy-mm-dd.

Hasta luego.

;)

Mauro® 25-10-2006 16:48:58

Muchas gracias
 
Gracias por la ayuda, entendí perfectamente el problema.
Saludos,
Mauro


La franja horaria es GMT +2. Ahora son las 22:05:40.

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