Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.02.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
14-29533
SPeller
2004-01-17 16:24
2004.02.10
Интерфейс к файлу SUHDLOG.DAT


6-29506
abyss
2003-11-26 22:05
2004.02.10
Програмно изменить локальный IP адрес


3-29280
Евген
2004-01-09 12:16
2004.02.10
Проблема с IBDataSet


1-29435
Marina_S
2004-01-31 11:59
2004.02.10
DRW


8-29474
ANubis
2003-08-19 21:10
2004.02.10
Bass.dll описание функции BASS_ChannelGetData





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский