Поиск:

Ответ в темуСоздание новой темы Создание опроса
> запрос по дате, времени и IP 
V
    Опции темы
pseud
Дата 17.12.2008, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(Martisha @  17.12.2008,  13:46 Найти цитируемый пост)
в "t.date_"  t зачем? 

1. принято раздавать псевдонимы таблицам, особенно если их много и у них длинные имена, чтобы знать чье поле чье в селекте
2. как я понял ты работаешь с PL/SQL Developer. Так вот в нем очень удобно имея псевдоним написать t. и он выдаст выпадающий списко (как в дельфи короче). удобно.
3. в нашем случае читай внимательно
Код

SQL.Add('  traffic t');



--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Martisha
Дата 17.12.2008, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(pseud @  17.12.2008,  14:49 Найти цитируемый пост)
1. принято раздавать псевдонимы таблицам, особенно если их много и у них длинные имена, чтобы знать чье поле чье в селекте

знаю, просто у меня будет только одна таблица, так что думаю это не обязательно?  smile 
но на будущее запомню)
PM MAIL ICQ   Вверх
Martisha
Дата 17.12.2008, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



pseud, использую твой код, только сортировки не происходит, просто отображается вся информация из таблицы
PM MAIL ICQ   Вверх
Frees
Дата 17.12.2008, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Martisha @  17.12.2008,  17:17 Найти цитируемый пост)
только сортировки не происходит

тебе сортировка или фильтрация нужна всетаки?


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Martisha
Дата 17.12.2008, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(Frees @  17.12.2008,  15:36 Найти цитируемый пост)
тебе сортировка или фильтрация нужна всетаки? 

ой..фильтрация конечно). я хотела сказать, что вообще ничего не происходит, просто отображаются все записи из таблицы, а мне нужны только из интервала введенных дат  smile 

в самом запросе, когда делаешь 
Код

ShowMessage(SQL.Text);
 
запрос он выглядит так:
Код

select  *
from  traffic 
where 
            date_ BETWEEN to_date('19.11.2008','DD.MM.YYYY')
     and to_date('19.11.2008','DD.MM.YYYY')

т.е. даты которые вводишь в запросе отображаются, только почему то в dbGrid все записи помещаются независимо от введенных дат

Добавлено через 7 минут и 47 секунд
т.е. фильтрации не проитсходит

Это сообщение отредактировал(а) Martisha - 17.12.2008, 16:00
PM MAIL ICQ   Вверх
pseud
Дата 17.12.2008, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(Martisha @  17.12.2008,  15:53 Найти цитируемый пост)
т.е. даты которые вводишь в запросе отображаются, только почему то в dbGrid все записи помещаются независимо от введенных дат


выполни плиз тот же код прямо в PL\SQL Developer


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Akella
Дата 17.12.2008, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Martisha, ответь, запрос работает НЕ в дельфи? В какой среде разработки ты работаешь с базой? В этой IDE запрос работает?

Может у тебя запрос с теми параметрами ни разу не должен ничего возвращать.
PM MAIL   Вверх
Martisha
Дата 18.12.2008, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(pseud @  17.12.2008,  16:40 Найти цитируемый пост)
выполни плиз тот же код прямо в PL\SQL Developer 

уже, запрос нормально проходит

Добавлено через 2 минуты и 48 секунд
Цитата(Akella @  17.12.2008,  19:33 Найти цитируемый пост)
Может у тебя запрос с теми параметрами ни разу не должен ничего возвращать. 

запрос вообще работает, в дельфи не работает
PM MAIL ICQ   Вверх
Martisha
Дата 19.12.2008, 11:34 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



все, разобралась, получилось!  smile 
Код

procedure TForm1.Button1Click(Sender: TObject);
var DataText1,DataText2,TimeText1,TimeText2:String;
begin
DataText1:=DateToStr(DateTimePicker1.DateTime);
DataText2:=DateToStr(DateTimePicker2.DateTime);
TimeText1:=TimeToStr(DateTimePicker3.DateTime);
TimeText2:=TimeToStr(DateTimePicker4.DateTime);
    Form2.ORAQuery1.Close;
    Form2.ORAQuery1.SQL.Clear;
    Form2.ORAQuery1.SQL.Add('SELECT * ' +
                            'FROM traffic ' +
                            'WHERE  date_  > = ' + chr(39) + DataText1 + chr(39) + ' ' +
                            'AND date_ < = ' + chr(39) + DataText2 + chr(39) + ' ' +
                            'AND time_ > = ' + chr(39) + TimeText1 + chr(39) + ' ' +
                            'AND time_ < = ' + chr(39) + TimeText2 + chr(39) + ' ');
    Form2.ORAQuery1.Open;
    ShowMessage(Form2.ORAQuery1.SQL.Text);
  Form2.Show;
end;

просто формат в string надо было перевести  smile 
PM MAIL ICQ   Вверх
Frees
Дата 19.12.2008, 11:40 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



можно еще немного покороче писать
'AND time_ < = ' + chr(39) + TimeText2 + chr(39) + ' ');

'AND time_ < = '#39 + TimeText2 + #39' ');


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Martisha
Дата 19.12.2008, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(Frees @  19.12.2008,  11:40 Найти цитируемый пост)
можно еще немного покороче писать
'AND time_ < = ' + chr(39) + TimeText2 + chr(39) + ' ');

'AND time_ < = '#39 + TimeText2 + #39' '); 

 smile аха, пасиб)
PM MAIL ICQ   Вверх
pseud
Дата 19.12.2008, 15:15 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(Frees @  19.12.2008,  11:40 Найти цитируемый пост)
можно еще немного покороче писать

а еще лучше так
Код

'AND time_ < = ' + QuotedStr(TimeText2)
 
и тебе не придется следить за символами #39 (одинарная_кавычка)


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0537 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.