Последние два дня я сталкиваюсь с проблемой формата даты в SQL.
Я разработал приложение в ASP.NET и развернул его на рабочем сервере. Я сохраняю данные в таблицу, в которой есть столбец xml с полями даты вроде
--- некоторое время даты ---
Когда я запускаю приложение с локального хоста (или внедряю приложение на моем компьютере), дата сохраняется в 24-часовом формате
Например: 15/08/2009 14: 30: 00
и когда я запускаю то же приложение, развернутое на рабочем сервере, данные сохраняются в 12-часовом формате
Например: 15.08.2009 14:30
Примечание: я не указываю никакого формата в коде приложения при сохранении данных.
Вот что я попробовал:
Проверенные региональные настройки моего компьютера и веб-сервера и формат совпадают (ч: мм: сс тт)
Проверьте информацию о культуре на моем компьютере и на веб-сервере, и она совпадает. (Ан-АС)
В свойствах IIS моего компьютера я установил ту же культуру веб-сервера, отредактировав конфигурацию.
Даты в столбцах даты одной и той же таблицы сохраняются в согласованном формате (24-часовой формат), если они сохраняются как на моем компьютере, так и на рабочем веб-сервере.
Например: 2009-10-28 14: 00: 49.000
Тем не менее дата хранится в разных форматах. Я не могу понять, откуда приложение принимает формат при сохранении.
Я наконец нашел причину этой проблемы. Я хотел бы опубликовать это на тот случай, если кто-то столкнется с такой же проблемой, это может помочь
Перейти к regedit. Выберите Панель управления -> Международный -> sTimeFormat и проверьте заданный формат времени.
На моем компьютере формат времени - ЧЧ: мм: сс, а на сервере - основная проблема - чч: мм: сс. Я изменил формат на сервере на ЧЧ: мм: сс, и он отлично работает:)
Подробнее см. по этой ссылке .