![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DateTime в формате String в базе Access
Surrender © (2004-09-15 19:50:00)В базе Access Дата и Время записывается в формате String в виде 08.08.04 7:34:27 , SQL запрос на выбор записей лежащих в пределе Одной смены (т.е за 8 часов) возвращает не коректный результат. Подскажите пожалуйсто как заставить все правельно работать.
Erik1 (2004-09-16 10:08:00) [1]В MsAccess создаеш SQL и записываеш его, далее используеш этот SQL как таблицу. В SQL преобразовываеш String в DateTime, все быстро и просто.
sniknik (2004-09-16 07:53:00) [2]хотя бы замени формат записи (в строке) на однозначный
2004-12-01 00:00:00
2004/12/01 00:00:00
2004.12.01 00:00:00
(все равнозначны, должны работать)
sniknik (2004-09-16 07:48:00) [3]> во время выполнения запроса преобразовать тип этого поля
функция преобразования CDate или DateValue
это не проблема, проблема в том как они работает.
проверь вот такой запрос
Select CDate('01.13.04 00:00:00'), CDate('13.01.04 00:00:00')
и внимательно посмотри на результат
(а ведь записыватся могут оба варианта в зависимости от локальных настроек)
в общем менять тип нужно обязательно, и работать с ним как с датой (числом) а не строкой, легко можно это сделать в Access-е. (можно и запросами програмно но это чуть сложнее)
Surrender (2004-09-16 06:05:00) [4]Поменять тип поля я немогу ( или не знаю как) база создается программой визуализации ProTool как архив пораметров автоматически без моего вмешательства.
Запрос SQL я помещаю в ClientDataSet.CommandText в таком виде:
Select * from MyDb
Where MyTime > '08.08.04 00:00:01' And MyTime < '08.08.04 9:00:00'
Можно ли в ClientDataSet На лету во время выполнения запроса преобразовать тип этого поля, чтобы потом уже с помощью фильтра в томже ClientDataSet Отфильтровать данные,или же есть другой способ. Подскажите пожалуйсто!
ЮЮ (2004-09-16 02:42:00) [5]Свой запрос приведи хотя бы
sniknik (2004-09-15 20:37:00) [6]> В базе Access Дата и Время записывается в формате String
поменяй тип поля на нормальный datatime.
> Подскажите пожалуйсто как заставить все правельно работать.
правельно написать, с правельными данными.