Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 09-03-2008
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 23
gluglu Va por buen camino
Ya creo que lo tengo correctamente :

Código Delphi [-]
Aux_SelectSQL1 := '';
Aux_SelectSQL2 := UpperCase((DataSet as TIBDataSet).SelectSQL.Text);

for j := 1 to Length(Aux_SelectSQL2) do begin
  if Aux_SelectSQL2[j] = #13 then    Aux_SelectSQL1 := Aux_SelectSQL1 + ' '
  else
    if Aux_SelectSQL2[j] <> #10 then
      Aux_SelectSQL1 := Aux_SelectSQL1 + Aux_SelectSQL2[j];
end;
 
Aux_Pos := 1;
while PosEx(' FROM ', Aux_SelectSQL1, Aux_Pos) <> 0 do begin
  Aux_Pos := PosEx(' FROM ', Aux_SelectSQL1, Aux_Pos) + 1;
end;
 
Dec(Aux_Pos);
Aux_Table  := Copy(Aux_SelectSQL1, Aux_Pos+6, PosEx(' ', Aux_SelectSQL1, Aux_Pos+6) - (Aux_Pos+6));

Bastaba con buscar 'from' como palabra 'reservada'. Es decir, basta con buscar ' from ' con espacio delante y detrás.

Y revisando el código, me dí cuenta de otra particularidad que no mencioné anteriormente : las subconsultas !

Select fromage, (Select loquesea from mi_otra_tabla where loquesea = 1) from mi_tabla_de_fromages mtdf where fromage = 1

Por eso lo de localizar la última aparición de ' from ' en la sentencia SQL.

Saludos
__________________
Piensa siempre en positivo !
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
consulta a un query en vez de a una tabla eldiegofg SQL 10 19-09-2007 12:46:39
Tabla vacia que el motor de BD reporta llena Phacko Conexión con bases de datos 1 28-02-2007 06:02:34
que es más rápido query o filtrar tabla? Manuel Varios 27 29-10-2006 16:42:41
Cómo sincronizar Query y tabla David Conexión con bases de datos 2 13-07-2006 11:18:50
Tabla externa en query llonigualker Conexión con bases de datos 3 28-04-2006 12:14:22


La franja horaria es GMT +2. Ahora son las 08:32:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi