GARANTIR DESCONTO

Fórum Passar parâmetro em uma Query #181267

10/09/2003

0

Olá!
Tenho uma query passada através da propriedade SQL de um TQuery, sendo que gostaria de saber como posso um valor como parâmetro, não através do código, mas sim pelo ´String List Editor´.

Ex.:
select col1, col2
from tabela
where col1 = unit1.variavel

onde variavel=50
ou seja, pretendo passar o valor ´50´ da ´unit1´ na query


Bclr

Bclr

Responder

Posts

10/09/2003

Sousa_thiago

O SQL da Query ficaria assim :

select col1, col2
from tabela
where col1 = [b:0b2a260b6a]:col1[/b:0b2a260b6a]

//Quando for abri a query usa esse método
procedure form1.Abrir_Query;
begin
query1.close;
query1.ParamByName(´col1´).asinteger:=50;
query1.open;
end;

o sinal de : no SQL significa que akilo é um parametro, na sua query eu tenho uma propriedade que chama Param. nela vc deve configurar todos os parametros da sua query. ou seja nesse caso o parametro ´col1´ deve ser:
DataType : ftstring
ParamTypo : input

Espero ter ajudado
[]´s


Responder

Gostei + 0

11/09/2003

Bclr

Desta maneira eu estaria pegando o valor que a query selecionou, o que eu gostaria de fazer é passar um valor para esta query, que é algo do tipo:

O SQL da Query ficaria assim :
select col1, col2
from tabela
where col3 = [b:f7fd79256e]:valor[/b:f7fd79256e]

//Quando for abri a query usa esse método
procedure form1.Abrir_Query;
var
valor : integer;
begin
[b:f7fd79256e]valor := 15;[/b:f7fd79256e]
query1.close;
query1.ParamByName([b:f7fd79256e]valor[/b:f7fd79256e]).asinteger;
query1.open;
end;


Responder

Gostei + 0

11/09/2003

Ericfp

Ola.
Realmente vc deve fazer assim:

Select col1, col2
from tabela
where col1 = [b:bd19a98c42]:col1[/b:bd19a98c42]

Ai vc forma o parametro pela propriedade PARAMS da QUERY.

//Quando for abri a query usa esse método
procedure form1.Abrir_Query;
begin
query1.close;
query1.ParamByName(´col1´).TipoDoParametro := Componente.PropriedadeComOValor
query1.open;
end;


Abraço.


Responder

Gostei + 0

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

Aceitar