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

Вниз

Вложенные запросы. Нужен совет.   Найти похожие ветки 

 
DimonS ©   (2006-07-24 10:00) [0]

Решил попробовать сделать вложенный запрос, причем подзапрос обращается к этой же базе:

ADOGPS.Close;
ADOGPS.SQL.Clear;
ADOGPS.SQL.Add("select Distance as Dist from Distance_All where UniqID=1 and TimeNav");
ADOGPS.SQL.Add("=(select Max(Timenav) from Distance_all where Timenav<=:Dat2 and UniqID=1)");
ADOGPS.Parameters.ParamValues["Dat2"]:=DateTimeToStr(Now);
ADOGPS.Open;

В результате выдает ошибку:
"The conversion a chsr data type to a datetime data type resulted in an out-of-range datetime value"
Как я понял, вложенный подзапрос выдает не тот формат? По отдельности запросы работают нормально. Что здесь неправильно?

Или может быть проще сделать запрос через соединение таблиц?


 
Ega23 ©   (2006-07-24 10:05) [1]

А если Max не найдёт по такому условию?


 
DimonS ©   (2006-07-24 10:08) [2]


> Ega23 ©   (24.07.06 10:05) [1]


Найдет в любом случае, если отдельным запросом делать, то находит, база не пустая и значения такие точно есть.


 
Ega23 ©   (2006-07-24 10:35) [3]


> Найдет в любом случае, если отдельным запросом делать, то
> находит, база не пустая и значения такие точно есть.


Гарантии нет. Хотя тебе виднее. Но это потенциальная дыра, учти.


 
Desdechado ©   (2006-07-24 10:36) [4]

Ругается вот здесь:
ADOGPS.Parameters.ParamValues["Dat2"]:=DateTimeToStr(Now);
Какого лешего ты в строку преобразуешь? Передавай прямо.
Да и текст ошибки прозрачен - ошибка преобразования


 
DimonS ©   (2006-07-24 10:42) [5]


> Desdechado ©   (24.07.06 10:36)


Спасибо, дело было именно в преобразовании в строку. Передал напрямую - заработало все ок.



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

Форум: "Начинающим";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.039 c
2-1153809928
oleggar
2006-07-25 10:45
2006.08.13
уничтожить процесс


15-1152709539
oldman
2006-07-12 17:05
2006.08.13
Ультиматум истек - Microsoft оштрафован


2-1153848827
fast2
2006-07-25 21:33
2006.08.13
Почему так?


3-1145355789
Квэнди
2006-04-18 14:23
2006.08.13
Dbexpress+ mysql5


15-1153405319
Nic
2006-07-20 18:21
2006.08.13
Наверное глупый вопрос





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский