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 31-08-2021
Avatar de ethangio
ethangio ethangio is offline
Miembro
 
Registrado: jul 2008
Posts: 63
Poder: 16
ethangio Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
No usando parámetros.
Pero es mejor usar parámetros.
Depende de la base de datos que estés usando, puedes ver las sentencias que ejecuta la misma.
Me confunde tu respuesta ...

Entiendo que no es posible entonces. Estoy usando ZeosLib y MySQL.

Gracias por responder. Saludos.
Responder Con Cita
  #2  
Antiguo 01-09-2021
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Otra opción es usar el monitor que tienen los componentes. En el caso de ZeosLib (no he usado esta suite) creo que el monitor es el TZSQLMonitor
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #3  
Antiguo 01-09-2021
Avatar de ethangio
ethangio ethangio is offline
Miembro
 
Registrado: jul 2008
Posts: 63
Poder: 16
ethangio Va por buen camino
Cita:
Empezado por kuan-yiu Ver Mensaje
Yo tengo esta (no es mía sino de un compañero):
Cita:
Empezado por engranaje Ver Mensaje
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.
Muchas gracias a ambos, con ayuda de los 2 pude hacer mi procedimiento:
Código Delphi [-]
procedure GuardaConsulta(Query: TZQuery; Conexion: TZConnection);
var
  QInsert          : TZQuery;
  FechaHora      : TDateTime;
  ConsultaSQL,
  VarTmp          : String;
  i                    : Integer;
begin
  // Cadena de consulta SQL
  ConsultaSQL := Query.SQL.Text;

  // Remplazamos los parámetros por sus valores
  for i := 0 to Query.Params.Count-1 do
  begin
    // Creamos el nombre del parámetro para remplazarlo
    VarTmp := ':'+Query.Params.Items[i].Name;
    if query.Params[i].DataType = ftString then
      ConsultaSQL := StringReplace(ConsultaSQL, VarTmp, QuotedStr(Query.Params.Items[i].Value), [rfIgnoreCase])
    else if query.Params[i].DataType = ftInteger then
      ConsultaSQL := StringReplace(ConsultaSQL, VarTmp, Query.Params.Items[i].Value, [rfIgnoreCase])
    else
      ConsultaSQL := StringReplace(ConsultaSQL, VarTmp, QuotedStr(Query.Params.Items[i].Value), [rfIgnoreCase]);
  end;

  // Insert del query
  QInsert := TZQuery.Create(nil);
  try
    //
    FechaHora := now();
    QInsert.Connection := Conexion;
    ReadySQL(QInsert);
    QInsert.SQL.Add(' INSERT INTO consultas_sql (query, fechahora) ');
    QInsert.SQL.Add(' VALUES('+ QuotedStr(ConsultaSQL) + QuotedStr(FormatDateTime('yyyy-mm-dd hh:nn:ss', FechaHora)) +')');
    QInsert.ExecSQL;
  finally
    //
    QInsert.Free;
  end;

end;

Muchas gracias movorack por el tip y a todos por sus respuestas. Saludos desde Puebla, México

Última edición por ethangio fecha: 01-09-2021 a las 21:43:48.
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 04:34:05.


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