![]() |
Fecha en where
Hola club
Trabajo con delphi 7.0 y interbase 6.0.1 y utilizo los componetes IBX. Tengo problemas al hace un select a un conjunto de registros que estan filtrados por un where donde incluye fechas. Resulta que desde mi programa tengo in IBQuery conectado a una tabla y un where que utiliza parametros para el filtro respectivo select * from tabla_fecha where ffec >= :fini and ffec <= :ffin y hay veces que no lo ejecuta existiendo datos que cumplen el where. Utilizando el EMS-Interbase note que la fechas que maneja el interbase utilizan un formato mm/dd/aaaa y el formato de ingreso del programa es dd/mm/aaaa, no deseo cambiar el formato de ingreso ya que el formato estandar que se utiliza aca el dd/mm/aaaa... si alguien me diera alguna idea para esto sera bienvenida. Your friend, StartKill Lima-Perú |
Puedes probar con formatdatetime
select * from tabla_fecha where formatdatetime('mm/dd/yyyy',ffec)>= :formatdatetime('mm/dd/yyyy',fini) and formatdatetime('mm/dd/yyyy',ffec) <= :(formatdatetime('mm/dd/yyyy',ffin) lo que no se si tendras que ponerle un quotedstr(las comillas) en los formatdatetime |
Supongo que Interbase soporta Bind Params, de ser así no te tendrías que preocupar por que el formato de la fecha en el servidor y el cliente sean compatibles, siempre y cuando utilices parámetros para pasar los valores.
Saludos! |
Hola.
Deberias buscar otra posible razón, puesto que el componente IBOQuery ya se ocupará del formato de las fechas. Saludos. |
Holas,
:D los peores errores se cometen por exceso de confianza, por subestimar a nuestro menor enemigo(nosostros mismos)... Firibiri, delphi.com.ar, delphi.com.ar, guillotmarc, les estoy muy agradecido... revise mi select y me habia equivocado. antes select * from tabla_fecha where ffec >= :fini and ffec <= :ffin despues select * from tabla_fecha where :fini >= ffec and :ffin <= ffec Your Friend, :cool: StartKill Lima-Perú |
Hola.
Parece más lógica la primera consulta que la segunda. Una sintaxis alternativa, que hace lo mismo (que la 1ª consulta) pero que me parece más comprensible es : select * from tabla_fecha where ffec between :fini and :ffin Saludos. |
La franja horaria es GMT +2. Ahora son las 09:22:59. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi