Fórum dbExpress e o quot;BUG TALVEZquot;- A Saga Continua.. #152158
04/04/2003
0
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.
Em Tempo 2: Na última tentativa de me atenderem, que agradeço, me parece que a turma não esta entendendo. Não há erro na forma de passar o parâmetro, nem adianta tambem, trocar SQLDataSet por outro DataSet qualquer. O problema é o uso de parâmetro em contra partida a atribuição do SQL (string) a propriedade CommandText.
Obrigado outra vez.
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.
Em Tempo 2: Na última tentativa de me atenderem, que agradeço, me parece que a turma não esta entendendo. Não há erro na forma de passar o parâmetro, nem adianta tambem, trocar SQLDataSet por outro DataSet qualquer. O problema é o uso de parâmetro em contra partida a atribuição do SQL (string) a propriedade CommandText.
Obrigado outra vez.
Anonymous
Curtir tópico
+ 0
Responder
Posts
04/04/2003
Feliperodrigues
Tive esse mesmo problema com ADO mas acredito que a solução é a mesma.
Nesse seu comando por exemplo tenta usar assim:
Sql.Params[0].AsString:=´¬´ + ´Mar´ + ´¬´;
Espero ter ajudado.. e qualquer coisa pergunta denovo! :lol:
Nesse seu comando por exemplo tenta usar assim:
Sql.Params[0].AsString:=´¬´ + ´Mar´ + ´¬´;
Espero ter ajudado.. e qualquer coisa pergunta denovo! :lol:
Responder
Gostei + 0
05/04/2003
Anonymous
Faça assim sempre que trabalhar com parametros string na SQL
Sql.Params[0].AsString:=´´´ + ´Mar´ + ´¬´´;
as Aspas Duplas dentro da Asp delimita a String,
isso deve resolver seu problema
Sql.Params[0].AsString:=´´´ + ´Mar´ + ´¬´´;
as Aspas Duplas dentro da Asp delimita a String,
isso deve resolver seu problema
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)