Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-09-2021
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 14
engranaje Va por buen camino
Como ya te han recomendado es posible que la mejor opción para tí sea utilizar el propio log de Mysql que como leo estas investigando, o hacerte una función que recorra los parámetros de la query y los sustituya por el valor.


De todas formas basándome en tu ejemplo, algo rápido para salir del paso y desde luego nada reutilizable puede ser algo de este estilo:


Código Delphi [-]
Query.Close;
Query.Clear;
strInsert := ' INSERT INTO ventas (folio, fecha, clave, producto) ';
strValuesAUtilizar := ' VALUES (:folio, :fecha, :clave, roducto) ';

Query,SQL.Add(strInsert);
Query.SQL.Add(strValuesAUtilizar);
Query.ParamByName('folio').AsInteger      := 1; 
Query.ParamByName('fecha').AsString      := '2021-08-31';
Query.ParamByName('clave').AsString      := 'AB001';
Query.ParamByName('producto').AsString := 'Azúcar';
Query.Prepared := true;
                                                          
strValuesParaLog := format(' VALUES (%d, %s, %s, %s) ',  [Query.params[0].asInteger,
                                                          quotedstr(Query.params[1].asstring),
                                                          quotedstr(Query.params[2].asstring),
                                                          quotedstr(Query.params[3].asstring)]);                                                          
Query.ExecSQL;                                                            
showmessage(strInsert + #13 +strValuesParaLog);
Responder Con Cita
  #2  
Antiguo 01-09-2021
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Yo tengo esta (no es mía sino de un compañero):
Código Delphi [-]
   if query.sql.Text <> '' then
   begin
      consulta := stringReplace(query.sql.Text, #13#10, ' ', [rfreplaceall]);

      for i:= 0 to query.ParamCount-1 do
      begin
         try
            if query.Params[i].DataType = ftString then
                  consulta := stringReplace(sSql, ':'+ query.Params[i].Name, QuotedStr(query.Params[i].AsString), [rfreplaceall, rfIgnoreCase])
            else if query.Params[i].DataType = ftDateTime then
                  consulta := stringReplace(sSql, ':'+ query.Params[i].Name, QuotedStr(FormatDateTime('yyyy/mm/dd', query.Params[i].AsDateTime)), [rfreplaceall, rfIgnoreCase])
            else  consulta := stringReplace(sSql, ':'+ query.Params[i].Name, query.Params[i].AsString, [rfreplaceall, rfIgnoreCase]);
         except
            // Lo que quieras hacer si falla
         end;
      end;

      // Devuelves 'consulta' o lo grabas o lo que necesites
   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
Consulta con sql, parametros liito16 SQL 6 30-08-2010 18:01:11
Consulta con parametros betiitooo SQL 3 16-06-2008 22:12:50
Parametros en consulta SQL csja SQL 8 23-03-2008 23:37:34
Parametros integer en consulta php jgutti PHP 2 14-06-2006 21:16:20
Parametros en Consulta SQL joi Varios 2 31-10-2005 19:36:49


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


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