Armazenar dados de uma consulta em uma variável.

Delphi

25/08/2003

Olá, sou iniciante e preciso armazenar em uma variavel o seguinte:

SELECT TOP 1 CODIGO_PESO FROM TABELA WHERE CODIGO_PESO > 500

Qual a melhor maneira?


Grata.


Debora_lar

Debora_lar

Curtidas 0

Melhor post

Roberto Rodrigues

Roberto Rodrigues

18/08/2022

Bom dia,
com esse código o programa trava:
resultado:= query1.FieldByName(´CODIGO_PESO´).value;

Sem essa linha não tenho travamento, mas não pego o resultado que preciso.

Saberia o que fazer?

Grato.
GOSTEI 1

Mais Respostas

Vinicius2k

Vinicius2k

25/08/2003

Debora,
não entendi muito bem, mas vamos lah :
1 - se o q vc precisa armazenar eh o texto (SELECT TOP 1 CODIGO_PESO FROM TABELA WHERE CODIGO_PESO > 500) para passar para a query num outro processo vc pode armazenar numa variável string sem problemas...
texto:= ´SELECT TOP 1 CODIGO_PESO FROM TABELA WHERE CODIGO_PESO > 500´
depois...
query1.close;
query1.sql.clear;
query1.sql.add(texto);
query1.open;

2 - se o q vc precisa eh armazenar o resultado, então vc precisa declarar a variável ´resultado´ com o mesmo tipo do campo ´CODIGO_PESO´,
depois q vc abrir a query, eh vc igualar...
resultado:= query1.FieldByName(´CODIGO_PESO´).value;
mas isso soh resolve se o resultado da sua query for sempre um único registro, senão vc tem q localizar o registro desejado antes de igualar...

eh uma dessas duas soluções q vc procura?


GOSTEI 0
Debora_lar

Debora_lar

25/08/2003

Obrigada,

é a segunda, armazenar o resultado...


GOSTEI 0
Raimundo Pereira

Raimundo Pereira

25/08/2003

Bom dia,
com esse código o programa trava:
resultado:= query1.FieldByName(´CODIGO_PESO´).value;

Sem essa linha não tenho travamento, mas não pego o resultado que preciso.

Saberia o que fazer?

Grato.



var resultado:variant;
resultado:= query1.FieldByName(´CODIGO_PESO´).value;

Ou
var resultado:integer;
resultado:= query1.FieldByName(´CODIGO_PESO´).asinteger;

GOSTEI 0
POSTAR