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

Erro No Sql Hora


bortolotto

Pergunta

Bom dia!!!

Estou com um erro em um comando SQL no Delphi 6, numa tabela paradox 7.

O comando é:

var horaini, horafin:tdatetime;

begin

*horaini:=strtotime(hora_ini.text);

**horafin:=strtotime(hora_fin.Text);

dm.q_rela.Close;

dm.q_rela.SQL.Clear;

dm.q_rela.SQL.Add('select data_lida, nome, item, count(c.cod_barra)');

dm.q_rela.SQL.Add('from cod_barra c, cod_produto p');

dm.q_rela.SQL.Add('where p.cod_barra = c.cod_barra and');

dm.q_rela.SQL.Add(' data_lida >= :pardataini and');

dm.q_rela.SQL.Add(' data_lida <= :pardatafin and');

dm.q_rela.SQL.Add(' hora_lida >= :parhoraini and');

dm.q_rela.SQL.Add(' hora_lida <= :parhorafin');

dm.q_rela.SQL.Add('group by data_lida, nome, item');

dm.q_rela.ParamByName('pardataini').AsDateTime := data_ini.DateTime;

dm.q_rela.ParamByName('pardatafin').AsDateTime := data_fin.DateTime;

dm.q_rela.ParamByName('parhoraini').AsDateTime := horaini;

dm.q_rela.ParamByName('parhorafin').AsDateTime := horafin;

dm.q_rela.Open;

OBJ.: * hora_ini é um maskedit, editmask= __:__:__

** hora_fin é um maskedit, editmask= __:__:__

Da um erro : "Type mismatch in expression". O estranho é que se eu deixar so a data ela funciona, é se eu incluir hora não funciona.

Desde já agradeço a todos. Se puderem me ajudar ficarei muito grato

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Olá,

Dá uma olhada nos AND q você esta usando... Pode ser algum erro na lógica.

'where (p.cod_barra = c.cod_barra) and (data_lida >= :pardataini and data_lida <= :pardatafin) and (hora_lida >= :parhoraini and hora_lida <= :parhorafin)'

Obs. Tente usar o BETWEEN.

ex.: 'WHERE DATA BETWEEN :DATAINI AND :DATAFIM';

Abs.

Kiko

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...