Pegar Nome de campo em Query Dinamica.

05/01/2006

Ola Pessoal, talvez a pergunta que farei seja fácil de se fazer, mas confesso que estou perdido com ela.

Na Criação de uma query dinamica eu faço atruição de um select para ela,
logo apos eu preciso montar uma clausula Where com o 1 campo do select, como é uma caixa de pesquisa que sera herdada esse select vai ser diferente dependendo da pesquisa, mas sempre montarei o where com o 1 campo. o código que inicialmente achei que resolveria é este :

  with TSQLQuery.Create(Self) do
  try
    close;
    SQL.Add(vSQL);
    SQL.Add(´ where ´+ Fields[0&93;.FieldName +´ = ´ + Valor)
    Open;
  finally
    Free;
  end;


Sei que isso não ira funcionar mesmo. Alguem teria uma sugestão de como posso resolver este Problema .
Obrigado a todos !!


Mdm

Respostas

05/01/2006

Caninha51

Cara, achei tua dúvida muito interessante.
No firebird, e talvez em muitos outros, é possível acessar um campo pelo índice dele. Porém isso soh eh possível no Order By e no Group By.
Tipo...

Select * from produtos
Order By 1

Só que na cláusula Where isso naum funciona.
Deveria(deve) existir algo como
select * from produtos where column[1] = 5
**Obviamente desse jeito num funcionou**

Dei uma olhada no google e num achei nada...

Alguém tenho uma solução?Quero saber tb!:D


Responder Citar