Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.86/29: Рейтинг темы: голосов - 29, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 14
MS Access

Date between sql запрос

22.01.2018, 19:18. Показов 6449. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Помогите пожалуйста решить проблемку с кодом.
Имеется база данных сделанная в access.В базе имеется таблица с исключёнными участниками дачного кооператива.
В таблице есть поле dateiskl,в которое и заносится инфа,кого и когда исключили (тип данных Дата и Время,формат поля краткий)
Суть проблемы:я хочу реализовать поиск исключённых участников,который будет осуществляться по нажатию на кнопку,которая,в свою очередь,формирует запрос и берёт для сравнения первую и вторую даты из TEdit и выводит список людей,исключённых в заданный временной промежуток.
При нажатии на кнопку вылетает ошибка синтаксиса в запросе.

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TCoopIskl.Button1Click(Sender: TObject);
begin
if (Edit1.Text='') or (Edit2.Text='') then
showmessage('Заполните поля для поиска!')
else
begin
DataModule.ADOQuery3.SQL.Clear;
DataModule.ADOQuery3.SQL.Add('SELECT * FROM IsklChleni WHERE dateiskl between #+Edit1.Text+# and #+Edit2.Text+#');
DataModule.ADOQuery3.Active:=true;
IsklSearch.DBGrid1.Columns[0].Width:=60;
IsklSearch.DBGrid1.Columns[1].Width:=200;
IsklSearch.DBGrid1.Columns[2].Width:=112;
if DataModule.ADOQuery2.IsEmpty then
Showmessage('Ничего не найдено');
end;
end;
 
 
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.01.2018, 19:18
Ответы с готовыми решениями:

Запрос на DATE и TIME .. я в затруднении..
Дана таблица,которая имеет два поля: DATE (дата) TIME (время) Необходимо написать SQL-запрос,который возьмёт некий промежуток.....

Тип данных DATE в MS SQL 2012
Столкнулся с такой проблемой. В Таблице поставил тип данных DATE. Создал процедуру для ввода данных в таблицу, подключаю ее в delphi в...

SQl запрос Date
Добрый день. Подскажите пожалуйста как создать sql запрос с DISTINCT, чтобы дата не входила в результатирующий набор (Select) или...

30
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 14
22.01.2018, 22:54  [ТС]
Студворк — интернет-сервис помощи студентам
Massaraksh7, я ж только начинаю постигать,чего прикалываться-то
0
554 / 484 / 191
Регистрация: 11.12.2013
Сообщений: 2,507
22.01.2018, 23:01
Выложите свой проект, так будет быстрее.
0
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 14
22.01.2018, 23:05  [ТС]
Алекcей,
Вложения
Тип файла: rar Projects.rar (3.69 Мб, 6 просмотров)
0
554 / 484 / 191
Регистрация: 11.12.2013
Сообщений: 2,507
22.01.2018, 23:19
Завтра утром посмотрю.
0
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 14
22.01.2018, 23:21  [ТС]
Алекcей, спасибо вам!
0
Айлурофил
 Аватар для Massaraksh7
518 / 451 / 112
Регистрация: 27.05.2017
Сообщений: 2,748
Записей в блоге: 7
23.01.2018, 00:46
Цитата Сообщение от Jenek114 Посмотреть сообщение
...
Бегло глянул проект:
У AdoQuery3 параметры не созданы, из-за этого ошибка.
Dbgrid1 вообще ни к чему не привязан, естественно, он всегда пустой будет.
0
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 14
23.01.2018, 01:26  [ТС]
Massaraksh7, где тогда задавать параметры для query и к чему вязать грид?
0
Айлурофил
 Аватар для Massaraksh7
518 / 451 / 112
Регистрация: 27.05.2017
Сообщений: 2,748
Записей в блоге: 7
23.01.2018, 02:03
Если у вас dbgrid1 для adoquery3, то к нему и надо подвязывать. Параметры для query надо создать (не задавать, задаете вы их в коде) в инспекторе query.
Вообще, структура программы неудачная, там долго можно ошибки вылавливать.
0
554 / 484 / 191
Регистрация: 11.12.2013
Сообщений: 2,507
23.01.2018, 10:57
Лучший ответ Сообщение было отмечено Jenek114 как решение

Решение

замените свой обработчик Button1Click, на вот это
Delphi
1
2
3
4
5
6
7
8
procedure TCoopIskl.Button1Click(Sender: TObject);
begin
  with DataModule.TIsklChleni do begin
    Filtered:=False;
    Filter:='(dateiskl>='+DateToStr(dat1.DateTime)+') and (dateiskl<='+DateToStr(dat2.DateTime)+')';
    Filtered:=True;
  end;
end;
1
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 14
23.01.2018, 14:30  [ТС]
Алекcей, как доберусь до компа с проектом попробую

Добавлено через 22 минуты
Алекcей, остаётся только сделать функцию чтобы после отображённого результата поиска в гриде отображался весь список. Ну грубо говоря убрать результаты и вернуться обратно к полному списку. То,что вы предложили изменить в коде работает.

Добавлено через 17 минут
В общем-то проблема решена,дальше буду сам думать.
Спасибо всем!
0
554 / 484 / 191
Регистрация: 11.12.2013
Сообщений: 2,507
23.01.2018, 14:35
Лучший ответ Сообщение было отмечено Jenek114 как решение

Решение

добавьте кнопку "Снять фильтр" и ее обработчик будет такой:
Delphi
1
  DataModule.TIsklChleni.Filtered:=False;
и покажутся все записи
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.01.2018, 14:35

SQL-запрос к переменной типа Date
примерно dim f as date sql=&quot;select * from where = #&quot;&amp;f&amp;&quot;# &quot;`возвращает пустой запрос пробывал...

Как сформировать запрос SQL с Date
Есть таблица, нужно чтобы выводились на экран записпи с у которых есть еще три дня до опредленного числ т.е. есть запись с числом например...

SQL запрос, как сконверитировать date из input в datetime
В базе данных время хранится в формате datetime. В форе запроса данные приходят в формате date (как мне кажется). Как это подставить в SQL...

Запрос SQL к Access через переменную типа date
Уважаемые коллеги, прошу помощи, не могу выполнить запрос к Access 2000 из ASP. Так работает: sql = 'select Zn from table1 where...

Поправить SQL запрос. Временное условие (SELECT with date condition)
Помогите создать два запроса: 1) Запрос, который бы выбирал данные за прошлую неделю, т.е за семь дней с понедельника по воскресенье....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
Новые блоги и статьи
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
Вот представьте что вам дали бессмертие.
kumehtar 24.07.2026
Вот представьте что вам дали бессмертие, ничего более не меняя. Вообще ничего, только бессмертие в нынешнем виде. Рады были бы? Что бы вы тут делали всё это время? Никакой пенсии. Никакого нового. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru