Ir para conteúdo
Fórum Script Brasil
  • 0

(resolvido)Erro comando SQL - Delphi


carlosgmjr

Pergunta

Olá amigos,

Estou com um problema na função select para pesquisa na minha aplicação Delphi. Uso o Delphi 2007 e o firebird 2.5.

Meu software reconhece dados de um arquivo txt e grava no CDS. Depois, fiz através de 2 combobox, listas com opções para que o usuário possa buscar as informações por mês e ano. Para tanto, fiz uma função select para buscar as informações do campo DIA do meu BD.

o comando que estou fazendo é:

'select * from programacao where month(dia) = ' + inttostr(combobox1.ItemIndex + 1)

+ ' and year(dia) = ' + (combobox2.Items[combobox2.ItemIndex]);

A mensagem de erro é: Token unknown - line 1, column 33 month

Estava usando este mesmo comando com um bd do sql server e funcionou beleza, mas quando fiz uma nova aplicação pro firebird, este comando não funcionou....

Editado por carlosgmjr
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
o comando que estou fazendo é:

'select * from programacao where month(dia) = ' + inttostr(combobox1.ItemIndex + 1)

+ ' and year(dia) = ' + (combobox2.Items[combobox2.ItemIndex]);

A mensagem de erro é: Token unknown - line 1, column 33 month

carlosgmjr, esta ´não chega a ser uma dúvida de Delphi, mas sim banco de dados. Mesmo assim, vamos lá...

Como a mensagem diz, na 1 linha, coluna 33 há uma palavra desconhecida e se contarmos os caracteres vamos esbarrar com month. Esta função é específica do SQL Server, o FireBird não a possui nativamente, exceto pelo uso de alguma UDF (User Defined Function - função definida pelo usuário).

Para o firebird, voce deverá usar a função EXTRACT que é "equivalente" a função DATEPART do SQL Server:

'select * from programacao where extract(month from dia) = ' + inttostr(combobox1.ItemIndex + 1)

+ ' and extract(year from dia) = ' + (combobox2.Items[combobox2.ItemIndex]);

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...