Fórum COMO EU USO IF NO DELPHI COM FIREBIRD #427866
01/11/2012
0
Caros amigos"
Seguinte eu tenho a tabela CLIENTE com 5 campos telefones. Tipo : TEL1, TEL2, TEL3, TEL4, TEL5.
E relaciono com outra tabela de ENDEREÇO usando LEFT JOIN.
To tentando fazer um select que quando não houver o TEL1 que ele pegue o valor do TEL2. Se não houver o TEL2, que ele pegue o TEL3 e assim sucessivamente.
Meu select no IBEXPERT funciona, mas no DELPHI dar erro (SQL PARSER ERROR: EOF in string detected).
Meu select no IBEXPERT - FUNCIONA
SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')
as vaca FROM cliente
Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)
where NOME LIKE'%FELIPE%'
ORDER BY NOME
Meu select no DELPHI - DAR O ERRO (SQL PARSER ERROR: EOF in string detected)
DM.IBQClie.SQL.Add('SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')');
DM.IBQClie.SQL.Add('AS TELEFONE FROM cliente');
DM.IBQClie.SQL.Add('Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)');
DM.IBQClie.SQL.Add('where NOME LIKE'+QuotedStr('%'+Edit1.Text+'%'));
DM.IBQClie.SQL.Add('ORDER BY NOME ');
Alguem poderia me ajudar?
Seguinte eu tenho a tabela CLIENTE com 5 campos telefones. Tipo : TEL1, TEL2, TEL3, TEL4, TEL5.
E relaciono com outra tabela de ENDEREÇO usando LEFT JOIN.
To tentando fazer um select que quando não houver o TEL1 que ele pegue o valor do TEL2. Se não houver o TEL2, que ele pegue o TEL3 e assim sucessivamente.
Meu select no IBEXPERT funciona, mas no DELPHI dar erro (SQL PARSER ERROR: EOF in string detected).
Meu select no IBEXPERT - FUNCIONA
SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')
as vaca FROM cliente
Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)
where NOME LIKE'%FELIPE%'
ORDER BY NOME
Meu select no DELPHI - DAR O ERRO (SQL PARSER ERROR: EOF in string detected)
DM.IBQClie.SQL.Add('SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')');
DM.IBQClie.SQL.Add('AS TELEFONE FROM cliente');
DM.IBQClie.SQL.Add('Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)');
DM.IBQClie.SQL.Add('where NOME LIKE'+QuotedStr('%'+Edit1.Text+'%'));
DM.IBQClie.SQL.Add('ORDER BY NOME ');
Alguem poderia me ajudar?
Felipe Dias
Curtir tópico
+ 0
Responder
Posts
01/11/2012
Claudia Nogueira
Como você está alterado a sentença SQL via comando, as aspas simples têm se ser duas pra abrir e duas pra fechar, ficando seu código assim:
DM.IBQClie.SQL.Add('SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'''')');
DM.IBQClie.SQL.Add('AS TELEFONE FROM cliente');
DM.IBQClie.SQL.Add('Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)');
DM.IBQClie.SQL.Add('where NOME LIKE'+QuotedStr('%'+Edit1.Text+'%'));
DM.IBQClie.SQL.Add('ORDER BY NOME ');
Caros amigos"
Seguinte eu tenho a tabela CLIENTE com 5 campos telefones. Tipo : TEL1, TEL2, TEL3, TEL4, TEL5.
E relaciono com outra tabela de ENDEREÇO usando LEFT JOIN.
To tentando fazer um select que quando não houver o TEL1 que ele pegue o valor do TEL2. Se não houver o TEL2, que ele pegue o TEL3 e assim sucessivamente.
Meu select no IBEXPERT funciona, mas no DELPHI dar erro (SQL PARSER ERROR: EOF in string detected).
Meu select no IBEXPERT - FUNCIONA
SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')
as vaca FROM cliente
Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)
where NOME LIKE'%FELIPE%'
ORDER BY NOME
Meu select no DELPHI - DAR O ERRO (SQL PARSER ERROR: EOF in string detected)
DM.IBQClie.SQL.Add('SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')');
DM.IBQClie.SQL.Add('AS TELEFONE FROM cliente');
DM.IBQClie.SQL.Add('Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)');
DM.IBQClie.SQL.Add('where NOME LIKE'+QuotedStr('%'+Edit1.Text+'%'));
DM.IBQClie.SQL.Add('ORDER BY NOME ');
Alguem poderia me ajudar?
Seguinte eu tenho a tabela CLIENTE com 5 campos telefones. Tipo : TEL1, TEL2, TEL3, TEL4, TEL5.
E relaciono com outra tabela de ENDEREÇO usando LEFT JOIN.
To tentando fazer um select que quando não houver o TEL1 que ele pegue o valor do TEL2. Se não houver o TEL2, que ele pegue o TEL3 e assim sucessivamente.
Meu select no IBEXPERT funciona, mas no DELPHI dar erro (SQL PARSER ERROR: EOF in string detected).
Meu select no IBEXPERT - FUNCIONA
SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')
as vaca FROM cliente
Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)
where NOME LIKE'%FELIPE%'
ORDER BY NOME
Meu select no DELPHI - DAR O ERRO (SQL PARSER ERROR: EOF in string detected)
DM.IBQClie.SQL.Add('SELECT CLIENTE.*, COALESCE(tel1,tel2,tel3,tel4,tel5,'')');
DM.IBQClie.SQL.Add('AS TELEFONE FROM cliente');
DM.IBQClie.SQL.Add('Left Join ender_clie on (ender_clie.ID_CLIE=CLIENTE.ID_CLIE and Ender_clie.Master=1)');
DM.IBQClie.SQL.Add('where NOME LIKE'+QuotedStr('%'+Edit1.Text+'%'));
DM.IBQClie.SQL.Add('ORDER BY NOME ');
Alguem poderia me ajudar?
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)