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

Вниз

Несоответствие типов данных   Найти похожие ветки 

 
Caesar   (2003-05-19 10:43) [0]

Помогите! Пишу вроде простой запрос:
SELECT Model, First(Proisvod) AS Proisvod, Min(Date) AS MinDate, Max(Date) AS MaxDate, Sum(Count) AS SumCount, First(Type) AS Type, First(Pogr) AS Pogr
FROM Spravka WHERE (Id_Oper = 8) AND (Spravka.DateProv BETWEEN "01.01.2003" AND "01.05.2003") GROUP BY Model ORDER BY Model
Выдается ошибка: "Несоответствие типов данных в выражении условия отбора" Вроде с типами данных ничего не напутал! В чем может быть дело?


 
sniknik   (2003-05-19 10:48) [1]

в датах, дело может быть в датах. с ними вобще лутше работать через параметры.
потому что может быть различное представление в зависимости от параметров, возможно у тебя пройдет "01/01/2003" (а может и нет).


 
Geka   (2003-05-19 10:51) [2]

Min(Date) - поле лучше Date не называть...


 
Caesar   (2003-05-19 10:52) [3]

Понятно что в датах=) но "01/01/2003" не прочодит(:


 
Caesar   (2003-05-19 10:54) [4]

Geka к этой ошибке отношения не имеет=)


 
Caesar   (2003-05-19 10:56) [5]

Вообще выглядит так:
QueryReport.SQL.Clear;
QueryReport.SQL.Add("SELECT Model, First(Proisvod) AS Proisvod, Min(Date) AS MinDate, Max(Date) AS MaxDate, Sum(Count) AS SumCount, First(Type) AS Type, First(Pogr) AS Pogr");
QueryReport.SQL.Add("FROM Spravka WHERE (Id_Oper =");
str:= (ListOper.KeyValue);
QueryReport.SQL.Add(str);
QueryReport.SQL.Add(") AND (Spravka.DateProv BETWEEN");
Date:= #39 + DateMin + #39 + "AND"+ #39 + DateMax + #39 + ")";
QueryReport.SQL.Add(Date);
QueryReport.SQL.Add(" GROUP BY Model ORDER BY Model");
QueryReport.Open;
Кто нибудь поможет?


 
Mike Kouzmine   (2003-05-19 10:58) [6]

А попробуй параметры


 
Соловьев   (2003-05-19 10:59) [7]


> Кто нибудь поможет?

ответы почему не читаешь?
тебе же написали про параметры. sniknik © (19.05.03 10:48)



 
Caesar   (2003-05-19 11:14) [8]

Получилось=) Спасибо!


 
Victor_Cr   (2003-05-19 11:15) [9]

Результатом выполнения таких строк:
QueryReport.SQL.Add("SELECT Model, First(Proisvod) AS Proisvod, Min(Date) AS MinDate, Max(Date) AS MaxDate, Sum(Count) AS SumCount, First(Type) AS Type, First(Pogr) AS Pogr");
QueryReport.SQL.Add("FROM Spravka WHERE (Id_Oper =");

Будет строка
"SELECT Model, First(Proisvod) AS Proisvod, Min(Date) AS MinDate, Max(Date) AS MaxDate, Sum(Count) AS SumCount, First(Type) AS Type, First(Pogr) AS PogrFROM Spravka WHERE (Id_Oper =

Пробел нужен...


 
Caesar   (2003-05-19 11:33) [10]

Victor_Cr: Нет! Тут дело было вовсе не в пробеле! Просто дата записывается в формате #01/01/2003# и всё! А FROM слово зарезервированное и пробел никакой не был нужен! Если было так выдало бы синтаксическую ошибку=)))



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

Форум: "Базы";
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
8-13324
Матвеев Андрей
2003-02-18 17:14
2003.06.05
Вращение 3D фигур


7-13493
Игорь_Г
2003-03-27 01:15
2003.06.05
Работа с драйверами


1-13238
kruzoman
2003-05-27 14:25
2003.06.05
как получить параметры


1-13278
TuZ
2003-05-23 23:43
2003.06.05
Иконки из exe-шника


4-13513
Allex
2003-04-08 11:38
2003.06.05
Слияние файлов





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