FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Sobre el uso de ParamByName
Hola a tod@s.
El otro día digamos que "me llamaron la atención" (en plan coloquial) sobre la forma que tenía de comparar fechas encerrádolas entre comillas y que era mejor utilizar ParamByName en su lugar. Bien, hasta ahora el método de encerrar la fecha entre comillas nunca me habia dado problemas (Delphi-7, Zeos-6 y MySql-5) y pensaba que era lo correcto (mejor con un ejemplo) Sacar los datos entre las 21:00:00 de ayer y las 00:00:00 horas de mañana para las horas "en punto" Mi forma devuelve 26 filas
Con ParamByName devuelve una sola fila
¿No se utiliza asi? Gracias anticipadas Salvica |
#2
|
||||
|
||||
Hola Particularmente yo usaria esto:
y nunca me dio problemas. Saludos. |
#3
|
||||
|
||||
Cita:
No me vale, me sigue dando una fila. Supongo que tambien debería formatear la condición, no? (lo acabo de probar y tambien saca una sola fila) Gracias Salvica |
#4
|
||||
|
||||
¿y si utilizas "between" no funciona?
__________________
|
#5
|
||||
|
||||
Yo pasaría las horas por parámetros también (es más elefante).
Siempre que deciis que no os da problema usais un formato de fecha americano, y ese es el que toma por defecto los motores (pero podría cambiar). Al usar parámetros nos quitamos de problemas. Otro posible problema, es que AsDate también puede estar pasando la hora (ya que Tdate y Tdatetime viene a ser lo mismo), aconsejo usar: como sabemos, un Datetime es un Extended que guarda la hora en la parte fracionaria, quitándola, nos aseguramos de no pasarle hora ninguna en ese parámetro. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#6
|
||||
|
||||
Cita:
Saludos salvica |
#7
|
||||
|
||||
Cita:
__________________
|
#8
|
||||
|
||||
...pero en la hora 0:00:00 ya ha cambiado la fecha, es una lata andar con fecha de hoy, de mañana, etc...
No te vale algo así: fecha = :fecha and (hora between :hora1 and hora2) En hora1 le pasas 21:00 (formato time), y en hora2 le pasas 23:59:59.999 Así usas un parámetro de fechas menos. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#9
|
||||
|
||||
Perdonar la tardanza, estaba probando lo anterior
No funciona , me coge los tres días enteros |
#10
|
||||
|
||||
mmmkelas, pues entonces no entendí lo que estas buscando... déjame darle otra leída.
__________________
|
#11
|
||||
|
||||
Mira contraveneno, tengo unas tablas que contienen datos recogidos de unos sensores, por lo que vienen en formato Fecha, Hora, Valor y Calidad, por eso lo de consultar en unas horas determinadas. Parece ser que con el ParamByName se resuelve (o lo he reuelto) así:
La parte DATE_FORMAT(hora, "%i:%s")="00:00"' ) es la que me deja cojer los valores de las "horas en punto" Gracias a todos Salvica |
#12
|
||||
|
||||
Editaaaaaado otra vez:
Pues entre tu última repuesta y esto, creo que vamos volando Sí que hay que darle vueltas al tema jeje.
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 24-11-2008 a las 19:57:02. Razón: no pillaba la fecha de hoy de las 0:00 |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
ParamByName en ADO | silviodp | Tablas planas | 5 | 12-01-2008 13:50:01 |
Problema con Parambyname y dataset | Rockin | Firebird e Interbase | 4 | 12-10-2007 01:10:47 |
datetimerpicker-parambyname-SQL server 2000 | DarkGirl | MS SQL Server | 13 | 16-08-2007 00:39:09 |
Problemas con ParamByName Memo | ramonibk | MS SQL Server | 2 | 14-09-2004 14:15:26 |
Insert y parambyname | Dantael | SQL | 1 | 17-11-2003 09:50:24 |
|