Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JJunior

Pesquisa - Construir SQL em runtime

Recommended Posts

Caros amigos, boa tarde!Por favor uma pequena ajuda:Estou criando duas instruções SQL, onde em runtime estas instruções irão buscar uma String e um valor "integer" (são duas consultas distintas), só que estou me perdendo para achar o valor integer. Ou seja:1) Para buscar uma String a instrução funciona beleza, assim:Pesquisa a Razão Social ou nome do Clientevar RAZAO, SQL : String;begin RAZAO := UpperCase(InputBox('Consultas - Razão Social', 'Pesquisa Razão Social Cliente', '')); if RAZAO <> '' then begin queryCliente.Close; queryCliente.SQL.Clear; SQL := ''; SQL := 'SELECT * FROM CLIENTES '; SQL := SQL + ' WHERE RAZAOSOCIAL LIKE ''%'+RAZAO+'%'''; SQL := SQL + ' ORDER BY RAZSOCIAL, CODCLI '; queryCliente.Sql.Add(SQL); queryCliente.Open; end else begin ...2) Para buscar o valor integer a instrução esta assim:Pesquisa Código do Cliente (integer)var SQL : String; CODCLI : Integer;begin CODCLI := StrToInt(inputBox('Consultas - Código do Cliente', 'Busca o Cliente pelo Código', '')); if CODCLI <> 0 then begin queryCliente.Close; queryCliente.SQL.Clear; SQL := ''; SQL := 'SELECT * FROM CLIENTES '; SQL := SQL + ' WHERE CODIGOCLI = CODCLI '; // o erro esta nessa linha, só que... queryCliente.Sql.Add(SQL); queryCliente.Open; ...Não estou conseguindo passar o valor integer para dentro da consulta.Sei que é atoa isso mas não estou me encontrando.Quem puder ajudar agradeço muito.Um grande abraço a todosJJunior

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim:

 

var	SQL : String;	CODCLI : Integer;beginCODCLI := StrToInt(inputBox('Consultas - Código do Cliente', 'Busca o Cliente pelo Código', ''));if CODCLI <> 0 then	begin	queryCliente.Close;	queryCliente.SQL.Clear;	SQL := '';	SQL := 'SELECT * FROM CLIENTES ';	SQL := SQL + ' WHERE CODIGOCLI = ' + IntToStr(CODCLI);	queryCliente.Sql.Add(SQL);	queryCliente.Open;	end;end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcio, boa noite!Cara muito obrigado.Seguindo a sua instrução e fazendo o passo-a-passo, a gente verifica que o valor informado é passado para a consulta SQL, mas ao fazer a busca no db, o mesmo não localiza o código de cliente, já se fizermos o SQL Explorer e passarmos o mesmo valor, o cliente é encontrado.O que será que pode estar ocorrendo?Grande abraçoJJunior

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcio, bom dia!Cara, desconsidere a colocação anterior.Esta funcionando beleza.Eu editei o código errado, no meu prg. Grande abraço.JJunior

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.