Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-11-2008
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Poder: 21
salvica Va por buen camino
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
Código SQL [-]
     SQL.Add( ' WHERE (fecha="2008-11-23" AND DATE_FORMAT(hora, "%H:%i:%s")="21:00:00")' );
     SQL.Add( '    OR (fecha="2008-11-24" AND DATE_FORMAT(hora,    "%i:%s")="00:00")' );
     SQL.Add( '    OR (fecha="2008-11-25" AND DATE_FORMAT(hora, "%H:%i:%s")="00:00:00")' );

Con ParamByName devuelve una sola fila
Código SQL [-]
     SQL.Add( ' WHERE (fecha = :FechaAyer AND DATE_FORMAT(hora, "%H:%i:%s")="21:00:00")' );
     SQL.Add( '    OR (fecha = :FechaHoy  AND DATE_FORMAT(hora,   "%%i:%s")="00:00")' );
     SQL.Add( '    OR (fecha = :FechaMana AND DATE_FORMAT(hora, "%H:%i:%s")="00:00:00")' );
     SQL.Add( ' ORDER BY psensor.clave' );
     ParamByName('FechaAyer').AsDate := MI_FECHA-1;
     ParamByName('FechaHoy').AsDate  := MI_FECHA;
     ParamByName('FechaMana').AsDate := MI_FECHA+1;

¿No se utiliza asi?

Gracias anticipadas
Salvica
Responder Con Cita
 



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
ParamByName en ADO silviodp Tablas planas 5 12-01-2008 12:50:01
Problema con Parambyname y dataset Rockin Firebird e Interbase 4 12-10-2007 00:10:47
datetimerpicker-parambyname-SQL server 2000 DarkGirl MS SQL Server 13 15-08-2007 23:39:09
Problemas con ParamByName Memo ramonibk MS SQL Server 2 14-09-2004 13:15:26
Insert y parambyname Dantael SQL 1 17-11-2003 08:50:24


La franja horaria es GMT +2. Ahora son las 16:40:19.


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
Copyright 1996-2007 Club Delphi