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

Вниз

SQL и время в параметрах   Найти похожие ветки 

 
George ©   (2011-01-16 21:23) [0]

Почему вот при выполнении этого кода:

StartDate := StartDatePicker.Date;
EndDate := EndDatePicker.Date;
StartTime ;= StrToTime("00:00:00");
EndTime ;= StrToTime("23:59:59");
...
SQL.Text := SELECT * FROM GET_CONS_REPORT(:pStartDate, :pEndDate, :pStartTime, :pEndTime) WHERE TREE_LEVEL = 0;
Params.ParamByName("pStartDate").Value := StartDate;
Params.ParamByName("pEndDate").Value := EndDate;
Params.ParamByName("pStartTime").Value := StartTime;
Params.ParamByName("pEndTime").Value := EndTime;

Я получаю ошибку:
"Dynamic SQL Error
SQL error code = -303
conversion error from string "0.9999884259259260"".
БД: Файрберд.
Дельфи 2010.
Вин ХП.
Причем проблема, как выяснено экспериментальным путем именно со временем. Даты через параметры передаются прекрасно. Если время подставлять в строку запроса без помощи параметров - работает нормально. Подскажите, что у меня не так?


 
Palladin ©   (2011-01-16 21:26) [1]

а что это за психоделическое приравнивание через ;=
смайл в коде или новая фича?


 
George ©   (2011-01-16 21:27) [2]

Забыл упомянуть, что используется IBDataSet из IBControls.


 
George ©   (2011-01-16 21:29) [3]


> Palladin ©   (16.01.11 21:26) [1]

Да у меня просто код в виртуалке, буфер обмена глючит. Вручную перепечатал и опечатался. :)


 
DiamondShark ©   (2011-01-16 21:38) [4]


> .Value :=

.AsDateTime :=


 
Palladin ©   (2011-01-16 21:48) [5]

после назначения Text напиши
ShowMessage(GetEnumName(TypeInfo(TFieldType), Integer(Params.ParamByName("pStartTime").DataType)));

перед этим в uses добавив TypInfo


 
George ©   (2011-01-16 22:06) [6]


> DiamondShark ©   (16.01.11 21:38) [4]

Да, подумав головой, я таки понимаю, почему это правильно. :) Работает, спасибо.


> Palladin ©   (16.01.11 21:48) [5]

ftUnknown выдавало.


 
Palladin ©   (2011-01-16 22:13) [7]

ADO провайдер не определил тип данных


 
George ©   (2011-01-16 22:47) [8]


> Palladin ©   (16.01.11 22:13) [7]

Ага, только не ADO, а IB же?
Хотя в данном случае это не имеет никакого значения вроде.


 
Palladin ©   (2011-01-17 01:23) [9]

ADO почти всегда определяет. Кроме ftString для поля nvarchar.


 
Anatoly Podgoretsky ©   (2011-01-17 01:46) [10]


> Palladin ©   (17.01.11 01:23) [9]

Эту ошибку давно исправили, теперь определяет правильно ftWideString



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

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

Наверх




Память: 0.49 MB
Время: 0.008 c
15-1295126991
Юрий
2011-01-16 00:29
2011.05.01
С днем рождения ! 16 января 2011 воскресенье


15-1294832061
Делфиец
2011-01-12 14:34
2011.05.01
Почему программисты такие ватокаты?


2-1296036677
И. Павел
2011-01-26 13:11
2011.05.01
Вызов свойства OLEVariant, название которого задано в строке


3-1258021986
Дмитрий Белькевич
2009-11-12 13:33
2011.05.01
Еще одна проблема в D2010 - AV при доступе к Blob полям


10-1172936986
Un Copolly
2007-03-03 18:49
2011.05.01
Имперсонификация в трёхзвенном приложении (DCOM+ADO)