Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.22;
Скачать: CL | DM;

Вниз

Не могу прогнать запрос из Delphi в бд Access, поле с датой..   Найти похожие ветки 

 
Layner ©   (2006-08-29 08:59) [0]

Здравствуйте! Вот так проходит на ура:
SELECT field1,field2,field3 FROM tabl1 WHERE field3 = #07/01/2005#
Как только добавляю минуты, возникает ошибка в ADOQuery, "Неправильно определен объект Parameter. Предоставлены несовместимые или неполные сведения"
SELECT field1,field2,field3 FROM tabl1 WHERE field3 = #07/01/2005 09:02:46#
field3 - поле ДатаВремя

Как правильно из Delphi отправить запрос на Access? PS. В Access оба запроса работают, и возвращают выборку.


 
Sergey13 ©   (2006-08-29 09:01) [1]

Параметры в запросе используй.


 
Layner ©   (2006-08-29 09:05) [2]

ADOQuery только формирую динамически... ещё параметры при формировании добавлять?


 
Layner ©   (2006-08-29 09:07) [3]

А почему тогда без времени проходит, когда просто одна дата? Мне кажется тут надо опр. запись даты с времением формировать, иначе бы и просто с одной датой не работало..


 
Sergey13 ©   (2006-08-29 09:10) [4]

> [3] Layner ©   (29.08.06 09:07)

Можно подбирать формат. Можно подбирать формат для разных машин и пользователей.
А можно просто использовать параметры.
Выбор за тобой.


 
Layner ©   (2006-08-29 09:12) [5]

ADOQuery подставляет вот это 02:46# окончание как парамерт, может быть разделители минут поменять? Сейчас попробую.


 
sniknik ©   (2006-08-29 09:12) [6]

> А почему тогда без времени проходит, когда просто одна дата?
потому что тогдв в запросе нет двоеточий, которые известно как дельфи воспринимает... и что нужно делать чтобы не воспринимал. ;)


 
Layner ©   (2006-08-29 09:15) [7]

ВО, так и знал, запрос с точками проходит без проблем, значит это ":" воду мутит для ADOQuery :)
Кстати, запрос с форматом 07/01/2005 09.02.46 проходит на всех машинах, не зависимо от их настроек даты/время.


 
sniknik ©   (2006-08-29 11:08) [8]

> значит это ":" воду мутит для ADOQuery :)
для делфевских компанент это признак что после идет параметр... если тебе не нужен авторазбор запроса на параметры отключи его. и это не "муть", это вполне задокументированное поведение.

> Кстати, запрос с форматом 07/01/2005 09.02.46 проходит на всех машинах, не зависимо от их настроек даты/время.
независимы только параметры, строковые представления всегда от конвертора зависят а он от чего угодно...
выполни запрос к примеру
SELECT #13/01/2005 09.02.46#, #01/13/2005 09.02.46#
интересный результат да? а это все ты должен учитывать если хочеш чтобы твои строковые представления всегда приводились так как ты задумывал. (я бы в одном из случаев примера предпочел бы ошибку... мало ли, сам ошибешся а это проглотится и перейдет уже в разряд логических... подзабудеш где делал или не очевидная связь... и могут месяцы на выявление уйти )



Страницы: 1 вся ветка

Текущий архив: 2006.10.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.03 c
2-1159939876
Korneley
2006-10-04 09:31
2006.10.22
Как использовать мышиное колесо прокрутки


2-1159968026
m-kirill-2003
2006-10-04 17:20
2006.10.22
Обновление формы и пауза в программе


3-1156542184
spogi
2006-08-26 01:43
2006.10.22
до 1 млн. в записях...


2-1159863991
alucard
2006-10-03 12:26
2006.10.22
Подскажите можно ли на SQL таблицу


2-1160377908
pavel_guzhanov
2006-10-09 11:11
2006.10.22
Создание директории на удаленном компьютере