Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.08.2017, 07:54   #11
Jakyll
 
Регистрация: 06.08.2017
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
да, реально не вижу косяков.

значит, придётся танцевать с бубном...

попробуйте
1)

Код:
var
  dt1, dt2: TDateTime;
begin
    IBQuery1.Close;
    IBQuery1.SQL.Clear;
    IBQuery1.SQL.Add
      ('Select * from profit WHERE n_date BETWEEN :date1 and :date2');
    IBQuery1.Prepare;
    dt1 := Trunc(DateTimePicker1.Date);
    dt2 := Trunc(DateTimePicker2.Date);
    IBQuery1.ParamByName('date1').AsDate := dt1;
    IBQuery1.ParamByName('date2').AsDate := dt2;
    IBQuery1.Open;
end;
2)

Код:
var
  dt1, dt2: TDateTime;
begin
    IBQuery1.Close;
    IBQuery1.SQL.Clear;
    IBQuery1.SQL.Add
      ('Select * from profit WHERE n_date >= :date1 and n_date <= :date2');
    IBQuery1.Prepare;
    dt1 := Trunc(DateTimePicker1.Date);
    dt2 := Trunc(DateTimePicker2.Date);
    IBQuery1.ParamByName('date1').AsDate := dt1;
    IBQuery1.ParamByName('date2').AsDate := dt2;
    IBQuery1.Open;
end;
результат?
Цитата:
результат?
Без изменений
Jakyll вне форума Ответить с цитированием
Старый 22.08.2017, 07:55   #12
Jakyll
 
Регистрация: 06.08.2017
Сообщений: 8
По умолчанию

Диалект третий
Jakyll вне форума Ответить с цитированием
Старый 22.08.2017, 08:36   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Еще можно поиграться присвоив предварительно явный DataType параметрам ftDate или ftDateTime
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 22.08.2017, 09:30   #14
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Предложение:

1) пройтись по коду трассировкой и проверить, что передаётся в значения параметров;
2) попытаться выполнить этот запрос (который формируется в п. 1) из среды БД.

А то как-то начинаем уже в угадайку играть.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 22.08.2017, 10:27   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

На FireBird 1.5 (2.5 нет) в д7 и IBX попробовал ради интереса - работает нормально без всяких ухищрений
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 22.08.2017, 14:47   #16
Правильный Вася
Пользователь
 
Регистрация: 15.08.2017
Сообщений: 10
По умолчанию

If a TDateTime value is assigned to a parameter via the AsDate property and the TDateTime value has a nonzero time, the time is ignored and only the date is assigned.
Правильный Вася вне форума Ответить с цитированием
Старый 22.08.2017, 14:49   #17
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
Правильный Вася
И что? У ТС вообще с нулевым временем в параметр присваивается
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 22.08.2017, 15:28   #18
Правильный Вася
Пользователь
 
Регистрация: 15.08.2017
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
И что? У ТС вообще с нулевым временем в параметр присваивается
да мусор в коде...


дурная догадка: а вдруг у автора пикер первый стоит справа, а второй - слева?
Правильный Вася вне форума Ответить с цитированием
Старый 22.08.2017, 18:24   #19
Jakyll
 
Регистрация: 06.08.2017
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Правильный Вася Посмотреть сообщение
да мусор в коде...


дурная догадка: а вдруг у автора пикер первый стоит справа, а второй - слева?
Приз в студию, у дурного автора действительно первый пикер стоял справа, а второй слева.
Народ всем спасибо за помощь.
Jakyll вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтрация даты через ibtable vbn1 БД в Delphi 5 13.06.2014 13:07
отнять дату от даты promt JavaScript, Ajax 2 27.01.2013 21:27
Фильтрация данных по диапазону даты? sctr84 БД в Delphi 2 05.03.2012 08:55
преобразование дАтЫ в дату suxo Microsoft Office Excel 7 01.06.2010 10:10
Фильтрация даты DElib БД в Delphi 1 25.04.2010 21:03