![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с датой [D7, MSSQL]
maxval © (2002-12-10 18:20:00)Пользователь из интерфейса выбирает период для запроса в SQL.
Query1.ParamByName("D1").AsDate:= DateTimePicker1.Date;
Query1.ParamByName("D2").AsDate := DateTimePicker2.Date;
Query1.ExecSQL;
Сам запрос
declare D1 datetime,
D2 datetime
Select
sum (round((convert(float,cls_timeroundoff)/60),2)) "Son"
from calls
where cls_timeringbegin between :D1 and :D2
and (Cls_RingInitPunct IN ("1857","3267","3282","4485","4486","4545","4566")
and cls_service in("25","32"))
Возникает ошибка - Invalid date format
Заранее спасибо!
Cheshit (2002-12-13 18:09:00) [1]1.В BDE Alias нужно Dateformat=1
2.Используй DateOf(Picker.Date) если нужна только дата
Anatoly Podgoretsky (2002-12-13 16:55:00) [2]У тебя запрос возвращает набор данных, надо не Query1.ExecSQL а Open
asmith (2002-12-13 16:52:00) [3]const
szMSSQLDateFormat = "yyyy-mm-dd ";
var
Value1 : string;
strSQL : string;
...
DateTimeToString(Value, szMSSQLDateFormat, DateTimePicker1.Date);
strSQL := Format("...where cls_timeringbegin between ""%s"" and...", [Value1, ...]);
Prooksius (2002-12-13 16:10:00) [4]2 Maxval © (13.12.02 15:53)
А нигде в MSSQL этот формат даты не настраивается? Поищи.
Maxval (2002-12-13 15:53:00) [5]Это не проходит.
Мне кажется что это связано с форматом даты в MSSQL.
Там дата представлена как 2002/11/10.
Wolf (2002-12-13 15:19:00) [6]Попробуй присваивать
Query1.ParamByName("D1").value:=""""+datetostr(DateTimePicker1.Date)+"""";Это долно пройти
Jdrm (2002-12-13 12:17:00) [7]у тебя сейчас в запросе такая картина, например: ...from calls
where cls_timeringbegin between 10.11.2002 and 11.12.2002. а надо чтоб было between "10.11.2002" and "11.12.2002"
maxval (2002-12-13 11:09:00) [8]УВАЖАЕМЫЕ ПРПОФИ ПОМОГИТЕ ПОЖАЛУЙСТА!
ПОПАЛ В ТУПИК И НЕЗНАЮ КАК ВЫБРАТЬСЯ!!!!!