Главная страница
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.015 c
3-29248
Vic
2004-01-19 10:26
2004.02.10
Список таблиц access


6-29502
smit_
2003-12-07 23:51
2004.02.10
Как определить входящий звонок на модем?


4-29681
BarlaZ
2003-12-08 07:30
2004.02.10
Как сделать ScreenShot главной формы моего приложения?


8-29472
sCream
2003-10-11 15:30
2004.02.10
преобразование векторного формата


8-29485
Denver_99
2003-10-08 21:42
2004.02.10
Разработка ценника