|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
SQL + DBGrid + Button + DataTimePicker
Добрый день товарищи.Подскажите пожалуйста начинающему программисту.
Задача.Написание программы в Delphi. В этой программе нужно делать выборку по дате и времени с такого число и время по такое то число и время.База данных находится в SQL.Моя задача написать скрипт в кнопки Delphi, который по итогу выдатс за определенный период даты и времени продукцию.Как все организовано.У меня DbGrid->подключен к DataSource->далее AdoQuery->и далее AdoConnection.E меня получилось сделать njkmrj когда задаешь в DatatimePiker именно то число и время которое в бд.А как сделать интервал между числами и чтоб он эту выборку выдывал в DbGrid я не знаю..подскажите. Фото загрузил на файлообменик. http://i053.radikal.ru/1612/2e/ec992d1cb1a4.jpg и еще одна http://s012.radikal.ru/i319/1612/97/2100dc86871c.jpg Заранее всех благадарю...сделать нужно очень срочно.. ну как всегда) |
#2
|
|||
|
|||
Ребят разобрался сам, вот код исходник на Delphi 7 для кнопки:
Код:
ADOQuery4.SQL.Add('SELECT * FROM BizerbaPereveska where Datetime > = ' + '''' + FormatDateTime('mm.dd.yyyy',DateTimePicker1.Date) + ' ' + TimeToStr(DateTimePicker3.Time) + ''' and Datetime < = ''' + FormatDateTime('mm.dd.yyyy',DateTimePicker2.Date) + ' ' + TimeToStr(DateTimePicker4.Time) + ''''); Последний раз редактировалось lmikle, 19.12.2016 в 10:25. |
#3
|
|||
|
|||
Делай через параметры, тогда не будешь зависить от установленного формата даты/времени. И не надо будет каждый раз запрос переделывать.
В запрос: Код:
select * from BizerbaPereveska where Datetime >= :dstart and Datetime <= :dend В коде кнопки надо примерно так: Код:
ADOQuery4.Params.ParamByName('dstart').AsDateTime := DateTimePicker1.Date + DateTimePicker3.Time; ADOQuery4.Params.ParamByName('dend').AsDateTime := DateTimePicker2.Date + DateTimePicker4.Time; Последний раз редактировалось lmikle, 19.12.2016 в 19:55. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Glazur (26.12.2016)
|
#4
|
|||
|
|||
Большое спасибо за ответ,я конечно все уже сделал , но коллега тоже говорил про параметры,хотя я немного не понял зачем нужны параметры если мы серовно по факту используем эти компоненты,только что писать многокилометровые компоненты не надо.
Цитата:
|
#5
|
|||
|
|||
Параметры нужны по нескольким причинам.
1. Повторное использование запроса. Т.е. если сам запрос один и тот же, только отличается значениями в WHERE и т.п., можно один раз его настроить и потом задавая параметры использовать один и тот же компонент. 2. Вытекает из 1. В таком случае можно спокойно отладить запрос в спец. программе, потом заменить значения на параметы и поместить его в компонент. Т.е. экономия времени. 3. Отвязка от региональных настроек. Значение парамерта будет корректоно передано серверу даже если региональные настройки сервера и клиента не совпадают. Если подумать, то можно найти еще кучу плюсов в использовании параметров. Но и минусы тоже есть. Один из них - дополнительные строчки кода на задание параметров. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Glazur (27.12.2016)
|
#6
|
|||
|
|||
Спасибо большое за развернутый ответ,мир не без добрых людей с наступающим вас=)
|