Fórum SQLQUERY #372384

17/07/2009

0

Tenho um banco de dados em paradox.e estou comecando a usar o sql.tentei fazer uma consulta com o sql query mas nao esta dando certo.
quero que apareça só os nomes que contenham MARIA por exemplo em um DBGRID,consultando pelo edit (Edit1.text)
a rotina que fiz foi essa dentro do editchange, e no sql query tstrings somente coloque SELECT * FROM CLIENTES

A TABELA É TBCLIENTES E O DATASOURCE É DSCLIENTES.

Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add(´Select * FROM CLIENTES´);
Query1.SQL.Add(´where NOME like ´´+Edit1.Text+´¬´´);
Query1.Open;

GRATO


Andsantos

Andsantos

Responder

Posts

17/07/2009

Leufmt

Dentro da Query deixe a consulta:
Select * FROM CLIENTES
where NOME like :c

No evento change do edite coloque:
Query1.Close;
Query1.Params[0].Value := (´¬´ + Edit1.Text + ´¬´);
Query1.Open;


Responder

Gostei + 0

17/07/2009

Andsantos

SÓ UMA DUVIDA ESSE ´c´ SERIA O PARAMETRO ?

OBRIGADO PELA AJUDA.VALEU!!!


Responder

Gostei + 0

17/07/2009

Leufmt

o c é um parametro.


Responder

Gostei + 0

17/07/2009

Andsantos

ENTAO, QUANDO VOU ATIVAR O SQLQUERY DA UMA MENSAGEM TABLE1 FIELD ´C´ NOT FOUND. PRECISO APONTAR O DATASOURCE TB?
GRATO


Responder

Gostei + 0

17/07/2009

Leufmt

esta com os dois pontos antes.
assim :c


Responder

Gostei + 0

17/07/2009

Andsantos

ENTAO, O ERRO CONTINUA! QUANDO VOU ATIVAR O SQLQUERY APARECE A MENAGEM TABLE : FIELD ´C´ NOT FOUND.
GRATO


Responder

Gostei + 0

17/07/2009

Leufmt

se tu for ativar em modo de projeto dá erro mesmo. agora se for quando o sistema estiver sendo executado ai é estranho


Responder

Gostei + 0

17/07/2009

Andsantos

E ISSO MESMO, MAS QUANDO COLOCO NO EDIT POR EXEMPLO MARIA ELE NAO RETORNA NO DBGRID ESSES REGISTROS.
GRATO


Responder

Gostei + 0

17/07/2009

Leufmt

tem que ver como esta no banco esta informação. Pois se no banco estiver tudo maiusculo e tu estiver mandando para o parametro em minusculo, ai realmente não deve retornar nada


Responder

Gostei + 0

17/07/2009

Andsantos

DESDE JA OBRIGADO PELA PACIENCIA!!!!!
ENTAO NAO ESTA DANDO CERTO MESMO.COLOCO PARA PESQUISAR PARTE DO NOME NO CASO ANDRE ,MAS O DBGRID NAO RETORNA NADA.ESTOU DIGITANDO TUDO MAIUSCULO.NAO SERIA O CASO DE COLOCAR NENHUM BUTTON PARA REALIZAR ESSA CONSULTA? O EDITCHANGE JA FAZ ISSO?NAO SEI ONDE ESTA O ERRO?


Responder

Gostei + 0

17/07/2009

Leufmt

não precisa de botão. no evento change já faz tudo

tu não esta esquecendo de dar um open na tabela?


Responder

Gostei + 0

17/07/2009

Martins

DESDE JA OBRIGADO PELA PACIENCIA!!!!! ENTAO NAO ESTA DANDO CERTO MESMO.COLOCO PARA PESQUISAR PARTE DO NOME NO CASO ANDRE ,MAS O DBGRID NAO RETORNA NADA.ESTOU DIGITANDO TUDO MAIUSCULO.NAO SERIA O CASO DE COLOCAR NENHUM BUTTON PARA REALIZAR ESSA CONSULTA? O EDITCHANGE JA FAZ ISSO?NAO SEI ONDE ESTA O ERRO?


Seguinte, vou te dá uma dica que eu repassei para o Marcelo, um programado colega meu. Só que para vc já vai mais detalhado.

Tente como está abaixo.

   Query1.Close; 
   Query1.SQL.Clear; 
   Query1.SQL.Add(´Select * FROM CLIENTES´); 
   Query1.SQL.Add(´Where NOME like :pNome´);
   Query1.ParamByName(´pNOme´).AsString :=  Edit1.Text+´¬´; 
   Query1.Open; 



Responder

Gostei + 0

17/07/2009

Andsantos

ENTAO CARA,VALEU PELA DICA.O QUE ACONTECE , O SISTEMA NAO DA ERRO, MAS O DBGRID NAO RETORNA NENHUM VALOR DIGITADO.
GRATO


Responder

Gostei + 0

17/07/2009

Martins

ENTAO CARA,VALEU PELA DICA.O QUE ACONTECE , O SISTEMA NAO DA ERRO, MAS O DBGRID NAO RETORNA NENHUM VALOR DIGITADO. GRATO


Em qual evento de qual componente vc está escrevendo o código?


Post o seu código para vermos.


Responder

Gostei + 0

18/07/2009

Andsantos

ENTAO. VOU RESUMIR.TENHO UM CADASTRO CLIENTES TABELA DE NOME CLIENTES.DB FEITO EM PARADOX
COM UM DBGRID.COLOQUEI UM EDIT TEXT PARA FAZER A CONSULTA ATRAVES DO SQLQUERY.O SISTEMA NAO DA ERRO MAS A CONSULTA EM SI NAO RETORNA NENHUM RESULTADO NO DBGRID.
O SQLQUERY CONFIGUREI ASSIM:
NAME: QUERY1
SQL STRINGS: SELECT * CLIENTES WHERE NOME LIKE:PNOME
NO EDITCHANGE COLOQUEI O CODIGO QUE VC ME PASSOU.MAS NAO CONSEGUI RETORNAR NENHUM VALOR.
GRATO


Responder

Gostei + 0

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

Aceitar