'Select A.COD_PRODUTO, A.DESCRICAO, A.VALOR, C.NOME From PRODUTOS A, FORNECEDOR C Where (C.NOME = '+ QuotedStr(LPesquisar.Text) + ' or A.DESCRICAO= '+ QuotedStr(descricao.Text) + ' or A.COD_PRODUTO =' + QuotedStr(cod_produto.Text) + ') and A.COD_FORNECEDOR = C.COD_FORNECEDOR'
Tenta isso. Eduardo ----- Original Message ----- From: T a t y S a n t a n a To: Grupo de Delphi Sent: Tuesday, May 10, 2005 1:11 PM Subject: [delphi-br] AJUDA - SQL Olá pessoal, olha como ficou minha SQL agora: With DM.QPesquisar do Begin SQL.Clear; SQL.Text := 'Select A.COD_PRODUTO, A.DESCRICAO, A.VALOR, C.NOME From PRODUTOS A, FORNECEDOR C Where (C.NOME = '+LPesquisar.Text+' or A.DESCRICAO= '+descricao.Text+' or A.COD_PRODUTO ='+cod_produto.Text+') and A.COD_FORNECEDOR = C.COD_FORNECEDOR'; Open; End; e o erro agora, é o seguinte: ERRO: Conversion error from String. Definitivamente não funciona, não sei o que fazer mais. Taty Santana ----- Original Message ----- From: Anderson Quandt Venancio To: delphi-br@yahoogrupos.com.br Sent: Tuesday, May 10, 2005 10:28 AM Subject: Re: [delphi-br] AJUDA - SQL Primeiro, você tem que 'isolar' as condições do WHERE, pois senão ele vai se perder. O correto seria assim: SQL.Text := 'Select A.Cod_produto, A.Descricao, A.valor, C.NOME From PRODUTOS A, FORNECEDOR C Where (C.NOME = "'+LPesquisar.Text+'" or A.Descricao= "'+descricao.Text+'" or A.Cod_Produto ='+cod_produto.Text+ ') and A.COD_FORNECEDOR = C.COD_FORNECEDOR Ou seja, as condições "OR" devem ficar dentro de parêntesis e a outra condição (And) fora de parêntesis. Em segundo lugar, referente ao erro -104, dá uma conferida no nome das tabelas e colunas que você colocou no SQL, prá ver se está igual na sua base de dados, pois normalmente este erro ocorre quando foi informada uma tabela/coluna que não existe. sds Anderson > Olá pessoal bom dia, será que alguém poderia me ajudar. To terminando meu > projeto de fim de curso e to fazendo as consultas. Utilizei um Query pra > fazê-las, só que não dá certo. > Preciso pesquisar um produto pelo código dele, pelo nome e pelo fornecedor daquele > produto. Construí a seguinte rotina. > > With DM.QPesquisar do > Begin > SQL.Clear; > SQL.Text := 'Select A.Cod_produto, A.Descricao, A.valor, C.NOME From > PRODUTOS A, FORNECEDOR C Where C.NOME = "'+LPesquisar.Text+'" or > A.Descricao= "'+descricao.Text+'" or A.Cod_Produto ='+cod_produto.Text+ ' > and A.COD_FORNECEDOR = C.COD_FORNECEDOR'; > Open; > End; > > Não mudei de linha no código SQL aqui é porque não cabe. Aí quando se vai pra > execução quando eu clico no botão onde programei esse SQL ele dá o seguinte erro. > > DYNAMIC SQL ERROR > SQL ERRO COD = - 104 > TOKEN UNKNOWN - LINE 1, CHAR 148 > END. > > Nem sei mais o q testar. Já mudei diversas vezes e nada. Se alguém tiver uma idéia. > > Obrigada.. > > Taty Santana > > [As partes desta mensagem que não continham texto foram removidas] > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > > -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE -------------------------------------------------------------------------------- Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE ------------------------------------------------------------------------------ Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html