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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-01-2011
tiago_begins tiago_begins is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 15
Poder: 0
tiago_begins Va por buen camino
Problema con parametros

Hola amigos, necesito una ayuda urgente.
No sé que es lo que esta mal en este código:

Código Delphi [-]
begin
    sSQL:= ' DELETE FROM turnos WHERE ID_PACIENTE= :ID_PACIENTE AND DATE_FORMAT( FECHA_HORA, ' + QuotedSTR( '%Y%m%d' ) + ')= ' + QuotedSTR( FormatDateTime( 'yyyyMMdd'))= :FECHA_HORA;
        //DATE_FORMAT( FECHA_HORA, ' + QuotedSTR( '%H:%i' ) + ' ) '= QuotedSTR( FormatDateTime( 'yyyyMMdd')= ':fecha_hora');
        qryEXEC:=TZQuery.Create(nil);
        qryEXEC.SQL.Add( sSQL );
        qryEXEC.ParamByName( 'ID_PACIENTE' ).Value:= Data.qryTurno.FieldByName( 'ID_PACIENTE' ).Value;
        qryEXEC.ParamByName( 'FECHA_HORA' ).Value:= Data.qryTurno.FieldByName( 'FECHA_HORA' ).Value;
        qryEXEC.Connection:= Data.Conx;
        qryEXEC.ExecSQL();
        FreeAndNil( qryEXEC );
        Data.qryTurno.Refresh;
    end;

Tengo que decirle que me elimine los datos que están en FECHA_HORA con la ID_PACIENTE correspondiente, pero los datos de FECHA_HORA con este formato FormatDateTime( 'yyyyMMdd')

Mi error creo que está en esta línea:

Código Delphi [-]
sSQL:= ' DELETE FROM turnos WHERE ID_PACIENTE= :ID_PACIENTE AND DATE_FORMAT( FECHA_HORA, ' + QuotedSTR( '%Y%m%d' ) + ')= ' + QuotedSTR( FormatDateTime( 'yyyyMMdd'))= :FECHA_HORA;

espero su ayuda
Responder Con Cita
  #2  
Antiguo 29-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Qué base de datos es?
Responder Con Cita
  #3  
Antiguo 29-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Como presenta la fecha el campo ?:
Código Delphi [-]
Data.qryTurno.FieldByName( 'FECHA_HORA' ).Value
y Como presenta la fecha el campo FECHA_HORA de la tabla turnos?.
Si es que FECHA_HORA es un campo?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #4  
Antiguo 29-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
CONCATENACION????:
Código Delphi [-]
sSQL:= ' DELETE FROM turnos WHERE ID_PACIENTE= :ID_PACIENTE AND '+
       'DATE_FORMAT( FECHA_HORA, ' + QuotedSTR( '%Y%m%d' ) + ')= ' +
       QuotedSTR( FormatDateTime( 'yyyyMMdd')) +'= :FECHA_HORA';
El ultimo parametro presentado (:FECHA_HORA) DEBE SER, parte de la consulta.
Por eso hay que concatenarlo.
No se, digo...
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 29-01-2011
tiago_begins tiago_begins is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 15
Poder: 0
tiago_begins Va por buen camino
Mysql

La base de datos es MySql.

La tabla es turno y los campos ID_PACIENTE Y FECHA_HORA

El formato de la fecha es yyyyMMdd
Responder Con Cita
  #6  
Antiguo 29-01-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Entonces para que la formateas la fecha?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 29-01-2011
tiago_begins tiago_begins is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 15
Poder: 0
tiago_begins Va por buen camino
Clarooo

Muchas gracias, estaba pabeando formatando la fecha para solo eliminarla

Pero... tengo otra ahora:

Código Delphi [-]
qryExec:= TZQuery.Create(nil);
qryEXEC.SQL.Add(' INSERT INTO turno ( ID_PACIENTE, FECHA_HORA , ' +'DATE_FORMAT( FECHA_HORA, ' + QuotedSTR( '%H:%i' ) + ' )) values ( :ID_PACIENTE, :FECHA_HORA))');
        qryExec.ParamByName( 'ID_PACIENTE' ).Value:= Data.qryPAC.FieldByName ( 'ID_PACIENTE' ).value;
        qryExec.ParamByName ( 'FECHA_HORA').Value:= sHora;
        qryExec.Connection:=Data.Conx;
        qryExec.ExecSQL;
        FreeAndNil (qryExec);
        Data.qryTurno.Refresh;

me da error en la Syntaxis de MySql ( en la parte del código: 'DATE_FORMAT( FECHA_HORA, ' + QuotedSTR( '%H:%i' ) + ' ), tengo que guardar en el Campo FECHA_HORA el valor de la variable sHora
Responder Con Cita
Respuesta



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
problema con dll y parametros JoseQ OOP 3 03-02-2006 11:11:41
Problema con parámetros en UDF's Héctor Randolph Firebird e Interbase 5 21-12-2004 07:59:55
Problema parametros TAdoQuery Tio Conexión con bases de datos 4 02-06-2004 11:50:24
Problema con parámetros o sesiones __cadetill PHP 8 17-11-2003 22:31:52
Problema con ibDataSet y parametros. Nuria Conexión con bases de datos 8 01-08-2003 10:40:50


La franja horaria es GMT +2. Ahora son las 18:47:28.


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