quizás fecha no está en el formato correcto (es decir mm/dd/yyyy) y por eso no encuentra registros
De todas maneras, creo que es complicarse algo la cosa hacer un select para luego hacer un delete. Podrías hacer directamente un SQL de Delete en un Query (TQuery, TIBQuery, ...... según los componentes que uses)
Código Delphi
[-]
MiQuery.SQL.Text := 'delete from lecturas where numero=' + quotedstr(num) +
' and fecha = ' + quotedstr(fecha);
MiQuery.ExecSQL;