Ir para conteúdo

POWERED BY:

Arquivado

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

erikcedraz

Pesquisa Com Select

Recommended Posts

Pessoal estou com um problema parecido, sou novo no Delphi e estou tentando fazer um botão para que ao clicar execute este select do banco de dados que ja configurei, mas quando executa gera erro, segue abaixo o comando e mais abaixo o erro:

 

procedure TForm5.Button1Click(Sender: TObject);

begin

// vamos definir o comando SQL a ser executado

SQLDataSet1.CommandText := Select A30PROG_CLIE.*, A30POSTOS.Codigo as C1, A30POSTOS.Razao as C2,

 

A30CLIENTES.Nome as C3, A30PROD_CLIE.Produto as C4, A30PROD_CLIE.Preco as

 

C5, A30PROD_CLIE.Validade as C6 from (A30PROG_CLIE left join A30POSTOS on

 

A30PROG_CLIE.Posto = A30POSTOS.Codigo) left join A30CLIENTES on

 

(A30PROG_CLIE.Posto = A30CLIENTES.Posto and A30PROG_CLIE.Cliente =

 

A30CLIENTES.Cliente) left join A30PROD_CLIE on (A30PROG_CLIE.Posto =

 

A30PROD_CLIE.Posto and A30PROG_CLIE.Cliente = A30PROD_CLIE.Cliente) where

 

a30prod_clie.preco<>0 and a30prod_clie.validade='31/12/2050';

 

// vamos executar o comando

SQLDataSet1.ExecSQL(True);

 

// vamos mostrar uma mensagem indicando o sucesso da operação

ShowMessage('Dados inseridos com sucesso.');

end;

 

quando executo gera o seguinte erro :

[DCC Error] Unit5.pas(31): E2003 Undeclared identifier: 'Select'

[DCC Error] Unit5.pas(31): E2029 Expression expected but ',' found

 

Se puderem me ajudar, ficarei muito grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não está faltando por seu comando SQL entre aspas duplas não? Até onde lembro, o CommandText espera receber uma string, mas da forma que escreveu o código aqui você não está enviando uma string para ele... experimenta assim:

 

SQLDataSet1.CommandText := "Select A30PROG_CLIE.*, A30POSTOS.Codigo as C1, A30POSTOS.Razao as C2,

A30CLIENTES.Nome as C3, A30PROD_CLIE.Produto as C4, A30PROD_CLIE.Preco as

C5, A30PROD_CLIE.Validade as C6 from (A30PROG_CLIE left join A30POSTOS on

A30PROG_CLIE.Posto = A30POSTOS.Codigo) left join A30CLIENTES on

(A30PROG_CLIE.Posto = A30CLIENTES.Posto and A30PROG_CLIE.Cliente =

A30CLIENTES.Cliente) left join A30PROD_CLIE on (A30PROG_CLIE.Posto =

A30PROD_CLIE.Posto and A30PROG_CLIE.Cliente = A30PROD_CLIE.Cliente) where

a30prod_clie.preco<>0 and a30prod_clie.validade='31/12/2050'";

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.