Re: [delphi-br] AJUDA - SQL

2005-05-10 Por tôpico Anderson Quandt Venancio
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]
 
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

 




[delphi-br] Verificar se coluna existe (Firebird)

2005-05-09 Por tôpico Anderson Quandt Venancio
Pessoal, eu já havia enviado esta dúvida no grupo sobre Firebird, mas 
disseram para perguntar prá vocês ...
Lá vai:

No meu programa DELPHI, tenho uma função em que tenho o seguinte
comando SQL:

SELECT rdb$relation_fields.field_name
FROM rdb$relation_fields.rdb$relation_name = 'TABELA'
WHERE rdb$relation_fields.rdb$field_name = 'CAMPO_TABELA'

Só que quando executo este comando pelo programa ele não encontra, 
mesmo existindo a coluna na tabela em questão 

Tanto que se eu pego este SQL (no Debugger) e executo no IBExpert, 
por exemplo, ele retorna correto (encontra a coluna)...

Já fiz um teste, retirando a condição da coluna (rdb$field_name),
deixando somente o teste da tabela, e daí ele encontra. Mas quando
coloco a verificação da coluna daí deixa de funcionar.

Alguém sabe o que está errado ou sabe como posso fazer para testar se 
determinada coluna existe ou não em uma tabela, no Firebird?





-- 
 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