C# код считывает данные из базы данных через динамические запросы.Проблема с datetime SQL Server?
Select ID, TransDate from Table_01
Бизнес-логика обрабатывает данные и, наконец, снова возвращает дату в базу данных.
INSERT INTO Table_02
(ID,ClosingDate) VALUES
(1,Convert(DateTime, '27/07/2011 12:00:00 AM',120))
Поскольку формат даты, я вставляю, является dd/MM/yyyy. Sql Server не нравится и .net бросать эту ошибку: -
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value
Если я изменить его в ММ/дд/гггг или YYyyMmDd то он работает.
Но системные региональные настройки времени могут быть изменены любым пользователем любым пользователем, поэтому я ищу конкретное решение.
Каков наилучший способ справиться с этим?
SQL Server тоже не нравится. Вот ошибка: преобразование типа данных символа в тип данных datetime привело к значению даты и времени вне диапазона. – User13839404
@ User13839404 - Действительно? Я попробовал это на своем локальном экземпляре 2005 года, и он работает. – Thomas
Сервер Sql сидит на другой машине, где системный формат даты и времени - yyyy-MM-dd. Где приложение работает, формат datetime - dd/MM/yyyy. Я не знаю, имеет ли это значение? – User13839404