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

Вниз

Проблема с запросом   Найти похожие ветки 

 
dim- ©   (2004-01-17 01:47) [0]

В Access есть таблица с полем dat (Дата/время) пишу запрос:
ADODataSet1.CommandText:="select * from spisok Where (dat>="+#39+
DateTimeToStr(StrToDate(ndat))+#39+") and (Dat<="+#39+DateTimeToStr(StrToDate(kdat))+#39+")";

ругается "Несоответствие типов данных в выражении условия отбора"
что делаю не так?


 
sniknik ©   (2004-01-17 03:27) [1]

дату со строкой сравниваеш.


 
Flagman ©   (2004-01-17 07:48) [2]

("... WHERE ACCEPT_DATE >= "+""""+DateToStr(F_SPD.Date)+""""+" AND ACCEPT_DATE <= "+""""+DateToStr(F_PPD.Date)+"""")

Кусок из готовой проги, правда под IB. Все работает.
F_SPD и F_PPD - TDateEdit.


 
Tt   (2004-01-17 12:06) [3]

ADODataSet1.CommandText:="select * from spisok Where (dat>= #"+
DateTimeToStr(StrToDate(ndat))+" #) and (Dat<= #"+DateTimeToStr(StrToDate(kdat))+" #)"; ?


 
dim- ©   (2004-01-17 22:02) [4]

для Tt-не получается, говорит Ошибка "Дата содержит синтаксическую ошибку в выражении запроса"
для Flagman- на MSSQL тоже работает, а здесь не хочет


 
sniknik ©   (2004-01-17 23:17) [5]

правильно, строка в запросе(какую движок к типу приводит) зависит от локальных настроек, поэтому все что работает на одном компе на другом может глючить.
а сравнивать Access с MSSQL вообще некоректно (не приходит же тебе в голову колеса на запорожце с белаза заменить. а чего тоже ведь машина).


 
dim- ©   (2004-01-18 18:22) [6]

заработало, вместо "." в дате поставил "/" (#01/12/2003#), а по поводу сравнения двух движков БД, причем разработки одной фирмы, где используется язык запросов который (вроде бы) стандартезирован и если в одном дата заключается в кавычки, а в другом в "#" то вопрос о сравнении конечно ставить некоректно:)))


 
sniknik ©   (2004-01-18 20:15) [7]

думаеш только этим различия и ограничиваются? (наивный)
> .... язык запросов который (вроде бы) стандартезирован ...
вот именно, вроде бы, сходятся они примерно также как приведенные белаз с запорожцем.

в продолжении темы, для даты, сделай запрос
SELECT #01/13/2003#, #13/01/2003#
и как тебе, не впечатлило? лично я бы после этого(если б до сих пор делал так) бросил бы даты текстом вставлять.


 
dim- ©   (2004-01-19 22:09) [8]

так привел бы пример как не текстом составить SQL запрос


 
sniknik ©   (2004-01-20 00:12) [9]

а ты и не спрашивал. параметром.



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
14-29593
Ske4er
2004-01-18 17:19
2004.02.10
Жизненно важный опрос и восрос! Чесно-чесно


3-29209
Caries
2004-01-20 11:14
2004.02.10
Как программно добавить поле lookup в TTable?


14-29589
mixvictor
2004-01-18 22:29
2004.02.10
Нейронные сети


3-29200
Sergey konuhov
2004-01-19 12:32
2004.02.10
Как вуполнить Refresh одной записи в открытом IBDataSet


4-29650
Kinder
2003-12-07 11:45
2004.02.10
Заполнение корзины