Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS SQL Server > MS SQL Server 2000 - формат даты


Автор: Kaser 28.9.2004, 23:44
При работе с MS SQL Server 2000 столкнулся с проблемой: дата у него представляется в формате MMDDYY. То есть запрос вроде INSERT INTO MyTab Values('25-01-2004') ругается ошибкой "value out of range" (в смысле, 25 - это у него месяц).
Как это можно исправить?

Автор: Medved 29.9.2004, 01:31
Если не ошибаюсь, то при при установке сервера задаются эти параметры.

Дополнительно: посмотрите в SQL Server Book Online (поставляется вместе с дистрибутивом) в раздел Transact-SQL Reference подраздел CAST and CONVERT.

Автор: Kaser 29.9.2004, 09:54
Спасибо. Поищу.

Автор: boevik 29.9.2004, 22:49
Цитата(Kaser @ 28.9.2004, 23:44)
При работе с MS SQL Server 2000 столкнулся с проблемой: дата у него представляется в формате MMDDYY. То есть запрос  вроде INSERT INTO MyTab Values('25-01-2004') ругается ошибкой "value out of range" (в смысле, 25 - это у него месяц).
Как это можно исправить?

Никак это не исправляется.
При использовании SQL Statment напрямую можно использовать формат MM/DD YYYY или YYYY-MM-DD.
При использовании stored procedures используется формат клиента(компа) с которого запускается SP.

Автор: Yorm 4.3.2005, 14:36
Попробуй явно указывать формат даты при таких запросах:
qryInsert.Text = "SET DATEFORMAT dmy \r\n INSERT INTO MyTab(my_date) Values('25-01-2004')";
qryInsert.ExecSQL;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)