Como realizar uma pesquisa SQL com uma variável?

Delphi

04/10/2004

Sou Iniciante em SQL. Estou tentando selecionar um regitro da tabela, também tentei o locate!

dmMED.SQLQuery1.SQL.Add(´SELECT * FROM Exames WHERE CodSecr=Cod´); >>>CAMPO DA TABELA = VARIÁVEL

CodSecr >> é um campo da tabela Exames do tipo inteiro
cod >> é uma variável do tipo inteiro

Dá ERRO, diz que:
SQL ERROR= -206
COLUMN UNKNOWN
COD

Se alguém poder me ajudar, desde já agradeço!!! valeu!


Ilaera

Ilaera

Curtidas 0

Respostas

Paulo_amorim

Paulo_amorim

04/10/2004

Olá

Para passar parâmetros na Query, vc precisa colocar dois pontos( : ) antes...

Ficaria assim
SELECT * FROM Exames WHERE CodSecr = :cod


Depois vc define o Parâmetro:

SQLQuery1.ParamByName(´cod´).AsInteger := Variavel


Espero que ajude
Até+


GOSTEI 0
Vinicius2k

Vinicius2k

04/10/2004

Colega,

Vc pode fazer assim :
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Add(´SELECT * FROM Exames WHERE CodSecr=´ + IntToStr(cod));
SQLQuery1.Open;


Ou assim, q é a forma, digamos, mais ´correta´, fazendo uso de parametros:
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Add(´SELECT * FROM Exames WHERE CodSecr = :CodSecr´);
SQLQuery1.ParamByName(´CodSecr´).AsInteger:= Cod;
SQLQuery1.Open;


T+


GOSTEI 0
Ilaera

Ilaera

04/10/2004

Usei a opção com parâmetros!

dmMED.SQLQuery1.SQL.Clear;
dmMED.SQLQuery1.SQL.Add(´SELECT * FROM Exames WHERE CodSecr = :CodSecr´);
dmMED.SQLQuery1.ParamByName(´CodSecr´).AsInteger:= Cod;
dmMED.SQLQuery1.Open;

Brigadão!!! Valeu! Era isso ai mesmo!


GOSTEI 0
Rômulo Barros

Rômulo Barros

04/10/2004

Usei a opção com parâmetros! dmMED.SQLQuery1.SQL.Clear; dmMED.SQLQuery1.SQL.Add(´SELECT * FROM Exames WHERE CodSecr = :CodSecr´); dmMED.SQLQuery1.ParamByName(´CodSecr´).AsInteger:= Cod; dmMED.SQLQuery1.Open; Brigadão!!! Valeu! Era isso ai mesmo!


Legallll :wink:


GOSTEI 0
POSTAR