![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ayuda con consulta de fechas
Hola,
Tengo un inconveniente con una consulta que no se que sucede, he visto antes los otrs hilos y he hecho como dan las respuestas pero no obtengo el resultado y tengo un registro de pruebas, la sql es asi: Cita:
Espero me den una pista. Gracias de antemano. |
#2
|
|||
|
|||
como monstas el SQL (ua que dices que lo pasas por paramentro)? Haces un Query.ParamByName('Fecha').AsDatetime??
Danos algo mas de pistas ![]() De toda manera, si no te pilla el registro, es porque el formato de fecha no es ese. Quizas mm/dd/aaaa?? |
#3
|
|||
|
|||
Hola,
HAgo lo siguiente. Primero que todo decir que trabajo con dbexpress, y lo que hago es asignar la sentencia al commandtext del sql, obvio que primero cierro el cds le asigno la sentencia y luego la abro, la sentencia la construyo mediante código, ya que la tengo en una función para que me retorne la cantidad de registros y la sentencia, para evitar rodeos es esta: Cita:
No se si sigas sorprendido de como paso la sentencia antes de ejecutar la qry. Otra cosa NO ejecuto el sql.open, lo que hago es cds.open, ya que coom es dbexpress se debe trabajar con el cds. Agradesco la ayuda de antemano. |
#4
|
|||
|
|||
no se si has probado a ejecutar la sentencia que creas desde un programa externo estilo al SQL Explorer. Si no lo has hecho, pruebalo y veras donde esta el error
Otra cosa, las fechas y los campos alfanumericos, normalmente, has de ir entre comillas. Para ello te aconsejo el uso de la funcion QuotedStr A parte, mirate lo que te comentaba en el primer post, el formato de la fecha. Segun al SGDB que ataques sera uno u otro mm/dd/yyyy, dd/mm/yyyy,...... Espero que estas pistas te lleven a la solucion ![]() |
#5
|
|||
|
|||
Hola cadetil,
En efecto ya había ejecutado la sentencia en iboconsole y el resultado es el mismo, ademas la había ejecutado con un cast por si había problemas, estoy utilizando firebir, 1.5, creo no recuerdo exactamente ya que la he instalado hace tiempo, si no hago el cast me da error ya que el campo es de tipo date. Otra cosa que hago es utilizar el quotedstr cuando paso el parámetro para completar la sentencia, pero es igual. Espero que con estas otras pistas me puedan dar una ayuda o si es algun fallo de la versión de firebird. |
#6
|
|||
|
|||
Bueno, en Firebird, almenos hasta la version 1.0.3 que la que yo utilizo, el formato de fecha es mm/dd/yyyy por loq ue si montas una sentencia estilo....
Código:
var Fecha : TDate; begin Fecha := EncodeDate(2003, 8, 1); sSQLCaja = 'SELECT '+ ' M.IDMOVIMIENTO, M.VALORMOV, M.FECHAMTO, M.HORAMTO, '+ ' M.IDMOVIMIENTO, M.IDREGISTRO '+ ' FROM '+ ' MOVIMIENTOS M '+ ' WHERE '+ ' M.IDTIPOMOVIMIENTO = %d AND '+ ' M.FECHAMTO = ' + QuotedStr(FormatDateTime('mm/dd/yyyy', Fecha)); Ahora bien, para asegurarte de que no es problema de la fecha, yo quitaria de la sentencia SQL el TipoMovimiento (no sea que el problema lo este dando éste) A ver si logramos dar con el problema ![]() |
#7
|
|||
|
|||
Hola cadetil!
Efectivamente, la respuesta que me das con respecto a las fechas, si son tomadas como mm/dd/aaaa, lo que he realizado es asignar al campo la fecha con FormatDateTime('dd/mm/yyyy', Fecha), y del mismo modo cuando se lee o pasa el parámetro para que no haya problemas con el valor y si llegado el caso cambio de motor de BD no surja el mismo problema. por cierto, he intentado entrar en tu página porque he visto un mensaje con respecto a un preview pero no veno ningún menu u otra acción pra poder pasar a algún otro nivel. Tengo SO Win2KSrv y IE60. Gracias por la ayuda |
#8
|
||||
|
||||
Un comentario al margen:
Segun el standar SQL 92, el formato de la fecha debe ser yyyy/mm/dd. En teoria, si ponemos año/mes/dia en cualquier consulta, debe trabajar sin ningun problema en cualquier motor de bbdd.
__________________
Héctor Geraldino Software Engineer |
#9
|
|||
|
|||
Cita:
![]() Nada, tendre que mirar de cambiarlo de nuevo ![]() Por cierto, que si lo quieres te lo envio por correo Última edición por __cadetill fecha: 07-08-2003 a las 18:41:43. |
![]() |
|
|
![]() |
|