Passar parâmetro em uma Query
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
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
Curtidas 0
Respostas
Sousa_thiago
10/09/2003
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
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
GOSTEI 0
Bclr
10/09/2003
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;
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;
GOSTEI 0
Ericfp
10/09/2003
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.
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.
GOSTEI 0