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

Вниз

Форматы дат в MS SQL Server 2000   Найти похожие ветки 

 
Nikolai_S   (2004-01-15 10:58) [0]

У меня такая проблема. В каком формате нужно работать с датами в MS SQL Server 2000? У себя на рабочем месте в SQL-запросах все работало вот так:
SELECT * FROM MY_TABLE WHERE MY_DATE="23/10/2003"
т.е. дата писалась в одинарных ковычках и в формате "dd/mm/yyyy".

На сервере заказчика на подобный запрос выдается ошибка.

Вероятно в настройках SQL-сервера можно задать формат даты. Как тогда его программно узнать из Дельфи? Ведь сам дельфи как-то знает формат конкретного SQL-сервера, т.к. при работе с датами через TADOTable все всегда работает корректно, хотя тоже через SQL-запросы работает с БД.


 
Academic   (2004-01-15 11:00) [1]

При формировании запроса лучше использовать параметры для дат.
Гарантия того что сервер правильно поймет кодировку.


 
Nikolai_S   (2004-01-15 11:08) [2]

Параметры не катят. Там сложный SQL-запрос, да и в параметрах можно только задать условие типа MY_DATE=..., а мне нужно еще MY_DATE>=... , Date Between (...) AND (...) и т.п.


 
Nikolay M.   (2004-01-15 11:27) [3]


> в параметрах можно только задать условие типа MY_DATE=...,

С чего ты это решил? Попробовать MY_DATE >= :MY_DATE религия не дает?
Что касается сабжа, что мешало в BOL поискать SET DATEFORMAT?


 
Reindeer Moss Eater   (2004-01-15 11:49) [4]

Если параметры недопустимы, то используй ODBC-canonical формат
yyyy-mm-dd


 
paul_k   (2004-01-15 11:53) [5]

WHERE MY_DATE=convert(datetime,"23/10/2003",103)
это для указанного формата даты.
подробнее смотреть BOL функцию convert


 
Stas   (2004-01-15 11:54) [6]

Может это подойдет ?
http://delphimaster.net/view/3-1074079583/


 
sniknik   (2004-01-15 12:00) [7]

ничего не надо, никаких конвертов
SELECT * FROM Orders WHERE OrderDate="19960715"
MSSQL сам справится, yyyymmdd
(это к пример-базе Northwind)

хотя почему параметры не подходят все одно не пойму.


 
SergSuper   (2004-01-15 14:12) [8]

вобще язык и настройки задаются в параметрах логина

при добавлении логина это параметр @deflanguage
sp_addlogin [ @loginame = ] "login"
[ , [ @passwd = ] "password" ]
[ , [ @defdb = ] "database" ]
[ , [ @deflanguage = ] "language" ]
[ , [ @sid = ] sid ]
[ , [ @encryptopt = ] "encryption_option"]

Хранятся логины в таблице master..syslogins, туда же записывается и @deflanguage(поле language). По этому language определяется формат даты - по полю dateformat таблицы master..syslanguages.
Еще можно явно задать формат командой SET DATEFORMAT, в данном случае set dateformat dmy
Читайте BOL


 
Nikolai_S   (2004-01-15 14:31) [9]

В принципе параметры подойдут, но прога уже написана. Все переделывать долго, а вот формат даты в константе сидит. Его можно быстро изменить, даже вписать в него функцию.


 
Arm79   (2004-01-15 16:32) [10]

Смотри
> Reindeer Moss Eater © (15.01.04 11:49) [4]


и

> sniknik © (15.01.04 12:00) [7]



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

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

Наверх





Память: 0.47 MB
Время: 0.028 c
14-16715
Soft
2004-01-16 19:17
2004.02.06
Ошибка Microsoft Internet Explorer номер 444.


1-16360
Andrys
2004-01-24 08:48
2004.02.06
Текст на экране


14-16710
Ломброзо
2004-01-15 21:14
2004.02.06
Злой президент, обиженная женщина и добрые чечены


1-16442
Janbolat
2004-01-28 07:32
2004.02.06
Сохранение quickrep в формате HTML/htm


8-16527
Tol-123
2003-10-01 19:58
2004.02.06
GIF !!





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