Форум: "Базы";
Текущий архив: 2002.06.20;
Скачать: [xml.tar.bz2];
ВнизHELP !!! Проблема со временем Найти похожие ветки
← →
Pavel_S (2002-05-17 15:18) [0]Если выполнять следующий запрос не из программы то все ок
select * from SP_EMPLOYEE_WITH_ACTIVE_CARDS("1/25/1995")
Если же я добавляю в SelectSQL IBDataSet, то происходит следующее: он воспринимает дату только в таком виде 25/1/1995,
хотя у меня региональные и языковые установки стоят на представление даты в виде дд/мм/гггг.
Как решить эту проблему ?
← →
asafr (2002-05-17 16:49) [1]В Sourse допиши:
uses
Forms,
SysUtils,
........
........
{$R *.RES}
begin
Application.Initialize;
DateSeparator :="/";
SHortDateFormat :="dd/mm/yyyy";
................................
................................
Application.Run;
end.
← →
Pavel_S (2002-05-17 16:54) [2]к сожалению я это делал и это не работает.
← →
Val (2002-05-17 17:03) [3]а если прописавыть туда дату как параметр?
← →
kalinka (2002-05-17 17:27) [4]Попробуй так:
select *
from SP_EMPLOYEE_WITH_ACTIVE_CARDS(convert (datetime, "01.25.1995", 104))
← →
kalinka (2002-05-17 17:30) [5]ой, ошибка convert (datetime, "25.01.1995", 104))
а еще можно так:
Select *
from SP_EMPLOYEE_WITH_ACTIVE_CARDS(
convert (datetime, FormatDateTime("dd.mm.yyyy", @MyDate, 104))
← →
Fay (2002-05-17 19:13) [6]2kalinka Ваш пример на T-SQL. Нехорошо.
В IB разделитель является одним из признаков формата даты
т.е. "01.02.2002" <> "01/02/2002"
но "01.02.2002" = "02/01/2002"
← →
Pavel_S (2002-05-18 07:37) [7]Но если я вместо / указываю . то происходит ошибка.
Может кроме ShortDateFormat есть еще и api функции для установки параметров даты ?
← →
Johnmen (2002-05-18 09:14) [8]>Pavel_S © (18.05.02 07:37)
А подумать совсем неохота ?.....
см. Fay © (17.05.02 19:13)
← →
Hrul (2002-05-22 17:13) [9]Попробуй так:
var
t : TDateTime;
begin
t := ...
Query1.Close;
Query1.Clear;
Query1.Params.Clear;
Query1.SQL.Add("select * from SP_EMPLOYEE_WITH_ACTIVE_CARDS (:NEEDDATE)");
Query1.Params.ParamByName("NEEDDATE").AsDateTime := t;
Query1.Open;
...
end;
Пускай сама разбирается - она железная.
← →
Pavel_S (2002-05-25 16:38) [10]Заработал этот код
...
DateSeparator :=".";
SHortDateFormat :="dd.MM.yyyy";
...
← →
kaif (2002-05-26 13:43) [11]Нужно использовать форматы TDateTime или родное представление IB6.0 YYYY-MM-DD в виде строки. Иначе, если при сетевой работе региональные установки сервера и клиента не совпадут, то возникнут новые проблемы.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.06.20;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c