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

Вниз

Формат даты в запросах   Найти похожие ветки 

 
Oleg M   (2003-04-27 00:29) [0]

SQL Server 2000 (ADO), Delphi 6.

Как правильно вставлять дату в текст запроса ADOQuery?

Делаю так: "WHERE Date = """+ DateToStr(MyDateVar) +""""
при этом возникают проблемы (ругается сервер) с форматом даты. На разных серверах разные региональные настройки и приходится использовать ручное задание формата даты, свое для каждого сервера.

А как правильно?
Есть ли универсальный формат, понимаемый SQL сервером назвисимо от региональных настроек?
Можно ли запросить у сервера текущий формат или перезадать его на время выполнения запроса?


PS Пока приходится извращаться помещая обычные запросы в StoredProc и передавая даты через параметры.


 
Dok_3D ©   (2003-04-27 00:55) [1]

Правильно использовать запрос с параметрами.

ADOQuery.SQL.Clear;
ADOQuery.SQL.Add("SELECT ... FROM ... Where dtDate=:Date");
ADOQuery.Parameters.ParamByName("Date").DataType:=ftDateTime;
ADOQuery.Parameters.ParamByName("Date").DataType:=Now();
ADOQuery.Open;


 
wicked ©   (2003-04-27 03:15) [2]


> А как правильно?
> Есть ли универсальный формат, понимаемый SQL сервером назвисимо
> от региональных настроек?

есть - "yyyy-mm-dd" или "yyyymmdd"....


 
АлексейК   (2003-04-28 04:34) [3]

>Делаю так: "WHERE Date = """+ DateToStr(MyDateVar) +""""
А лучше так "WHERE Date = """+ FormatDateTime("yyyy.mm.dd",MyDateVar) +""""



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
1-59696
Chery
2003-05-07 18:09
2003.05.19
Вызов функции из Dll


1-59712
tytus
2003-05-05 17:45
2003.05.19
MessageBeep


1-59653
d_oleg
2003-05-07 10:02
2003.05.19
каталог запуска программы


1-59672
Patrick
2003-05-07 10:42
2003.05.19
Кодировка клавиш


1-59741
Ш-К
2003-05-06 01:52
2003.05.19
Шедулер.