Fórum SQL que não funciona ! Porque ? #171120

23/07/2003

0

with dm_monitora.ibQrycliente do
begin
sql.Clear;
close;
sql.Add(´select distinct cod_clien Codigo, nome_clien Nome,cpf_clien CPF´);
sql.Add(´from cliente´);
sql.Add(´where cpf_clien= :paramcpf or nome_clien= :paramcpf´);
Params[0].AsString:=editparam.Text;
params[1].asstring:=editparam.Text;
open;
end;

tenho a rotina acima ... e o que acontece é que quando digito mais de 16 digitos no editparam ele dá erro dizendo que a minha variavel suporta apenas 15 digitos... isso ocorre por que meu campo cpf tem tamanho 15 e meu nome 40 ... como faço para fazer uma select em dois campos usando o mesmo dado passado no editparam sem que haja este tipo de erro ?


Midas

Midas

Responder

Posts

24/07/2003

Basilio.sp

Caro midas,

Pra início de conversa, quando você for fazer qualquer tipo de alteração em uma query é aconselhável que a mesma esteja previamente desabilitada.

Com relação ao tamanho dos parametros, com o código alterado como o abaixo, você resolve o problema:

with dm_monitora.ibQrycliente do
begin
close; { Sempre feche ou desative a query antes de alterá-la }
sql.Clear;
sql.Add(´select distinct cod_clien Codigo, nome_clien Nome,cpf_clien CPF´);
sql.Add(´from cliente´);
sql.Add(´where cpf_clien= :paramcpf or nome_clien= :paramcpf´);
Params[0].AsString:=Copy(editparam.Text, 1, 15);
params[1].asstring:=editparam.Text;
open;
end;


Responder

Gostei + 0

25/07/2003

Midas

certimmm valeu basilio


Responder

Gostei + 0

25/07/2003

Basilio.sp

Caro midas,

Não há de que. Disponha.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar