Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-06-2014
maxi915 maxi915 is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 63
Poder: 13
maxi915 Va por buen camino
Solucionado!

Código Delphi [-]
procedure actualizardisponibilidad(QueryTurnos:TADOQuery; turno:Integer; lugares:Integer);
Begin
   with QueryTurnos do
    begin
     Close;
     sql.clear;
     sql.Add('update turnos set disponibilidad ='+inttostr(lugares)+' where id_turno='+IntToStr(turno));//sintaxis correcta
     ExecSQL;
    end;
end;
Responder Con Cita
  #2  
Antiguo 30-06-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola maxi915.

Primero que nada me alegra solucionaras tu problema .

Pero considero apropiado hacer nuevamente esta observación:

Siendo QueryTurnos de tipo TADOQuery y las variables Lugares y Turno de tipo integer, los siguientes códigos:
1)
Código Delphi [-]
  with QueryTurnos do
  begin
    Close;
    sql.clear;
    sql.Add('update turnos set disponibilidad ='+inttostr(lugares)+' where id_turno='+IntToStr(turno));//sintaxis correcta
    ExecSQL;
  end;
2)
Código Delphi [-]
  with QueryTurnos do
  begin
    Close;
    SQL.Clear;
    SQL.Add('UPDATE TURNOS SET DISPONIBILIDAD = :DISP');
    SQL.Add('WHERE ID_TURNO = :TURNO'); // sintáxis correcta (y aconsejada)
    Parameters.ParamByName('DISP').Value:= Lugares; 
    Parameters.ParamByName('TURNO').Value:= Turno;
    ExecSQL;
  end;
provocan el mismo resultado final. (Ambos modifican el valor de la columna DISPONIBILIDAD de acuerdo a una condición)

Pero las implicancias que trae aparejado usar un método o el otro son muy diferentes...

El primero deja la puerta abierta a los ataques de Inyección SQL. Siempre que sea posible es aconsejable usar el segundo modo.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 30-06-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.045
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por ecfisa Ver Mensaje
es aconsejable usar el segundo modo.
Responder Con Cita
  #4  
Antiguo 04-07-2014
maxi915 maxi915 is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 63
Poder: 13
maxi915 Va por buen camino
gracias por el consejo!!!
Responder Con Cita
  #5  
Antiguo 04-07-2014
maxi915 maxi915 is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 63
Poder: 13
maxi915 Va por buen camino
tengo una duda mas con el update y tipo fecha, necesito actualizar esto:
cambiar fechaInscripcion, por la variable fecha.

Código Delphi [-]
procedure actualizarFechaPago(Queryclientes:TADOQuery; id_cliente:integer; fecha:string);
Begin
   with Queryclientes do
    begin
     Close;
     sql.clear;
     sql.Add('update Clientes set FechaInscripcion ='+(fecha)+' where id_cliente='+IntToStr(id_cliente));
     ExecSQL;
    end;
end;

Responder Con Cita
  #6  
Antiguo 04-07-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.045
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Haciéndolo como se te ha aconsejado, con parámetros, no tendrías ningún problema con eso
Responder Con Cita
  #7  
Antiguo 04-07-2014
maxi915 maxi915 is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 63
Poder: 13
maxi915 Va por buen camino
perfecto lo voy a probar..ahora que seria la variable "DISP", y el simbolo "=:"...gracias

Código Delphi [-]
  with QueryTurnos do
  begin
    Close;
    SQL.Clear;
    SQL.Add('UPDATE TURNOS SET DISPONIBILIDAD = ISP');
    SQL.Add('WHERE ID_TURNO = :TURNO'); // sintáxis correcta (y aconsejada)
    Parameters.ParamByName('DISP').Value:= Lugares; 
    Parameters.ParamByName('TURNO').Value:= Turno;
    ExecSQL;
  end;
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 Update NISOTO Firebird e Interbase 7 01-03-2014 21:02:47
Problema con el UPDATE XcamX Conexión con bases de datos 12 21-12-2010 00:32:48
Problema con update agustin173 Varios 3 26-10-2010 00:22:11
Problema con sql Update juanpe Firebird e Interbase 3 04-09-2008 12:31:00
Problema con un update en un SP RONPABLO Firebird e Interbase 3 09-03-2005 19:58:43


La franja horaria es GMT +2. Ahora son las 12:57:57.


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