urgente- DBExpress Lento - Quarta Tentativa

Delphi

02/04/2003

Sempre que coloco algum parâmetro em Comandtext, tenho problemas de latência.

Ex.: Select Clientes.nome, Clientes.Cnpj
From Clientes
Where Clientes.Nome Like :nome

Passando o valor parâmetro, da forma que segue:

Sql.Close;
Sql.Params[0].AsString:=´Mar¬´;
Sql.Open;

O resultado é sofrível, mesmo com existência de índice para o campo nome.

Agora, quando monto a instrução(abaixo) e a atribuo para a propriedade CommandText, tudo ocorre com velocidade estupenda.

Ex.:

Sql.Close;
Sql.CommandText:=´Select Clientes.nome, Clientes.Cnpj ´+
´ From Clientes Where Clientes.Nome Like ´+ ´´´´ + ´Mar¬´ + ´´´´
Sql.Open;

Caros amigos seria BUG ou outra coisa?

Em tempo: Na última vez que coloquei esta questão, fui, talvez, mau entendido. Quero afirmar que não é problema do uso de Like no select, já que para qualquer campo que tenha índice, isto ocorre. Inclusive para chave-primária.

Caros amigos isto é muito GRAVE.
Por favor atentem para isto.

Favor postar o título em minúsculas
Moderador


Anonymous

Anonymous

Curtidas 0

Respostas

Hatrix

Hatrix

02/04/2003

Tenta usar o SqlQuery + DataSetProvider + ClientDataSet

ai vc vai na SqlQuery e coloca os parâmetros, mas não abra ela, abra o ClientDataSet.

e tente colocar :=#39+´Mar¬´+39;

O 39 são as aspas

Ou mesmo tente colocar só 39+´Mar¬´+39; no lugar do que vc estava usando, pq na primeira instrução que passou vc colocou sem as aspas.


GOSTEI 0
POSTAR