Проблема с перестановкой даты, дня и месяца при сохранении

У нас есть проблема, затрагивающая только производственную среду.

У нас есть веб-сайт VB6/ASP, который позволяет вручную редактировать данные в таблице базы данных.

Это очень похоже на редактируемую сетку данных.

Один из редактируемых столбцов — это дата, и когда запись сохраняется, даты дня/месяца меняются местами.

11.03.2008 становится 03.11.2008, если вы повторно сохраните запись, дата снова будет 11.03.2008.

Я проверил значение DB, и оно действительно реверсируется, однако тот же идентичный код в тестовых системах этого не делает.

Поэтому я очень уверен, что ищу изменения в окружающей среде. В тестовой системе БД и сайт размещены локально, а в реальной настройке у нас есть отдельный сервер веб-сайта и сервер базы данных. Где вы предлагаете мне начать искать эту проблему. Я проверил региональные настройки на серверах, и они установлены на Великобританию, а формат даты ОС правильный.

Это SQL Server 2000. Поразите меня некоторыми идеями!

Спасибо :)


person Robert    schedule 11.11.2008    source источник


Ответы (5)



Это почти наверняка связано либо с вашей машиной, либо с сервером БД, установленным в формате даты США. Дважды проверьте обе системные настройки.

Кроме того, можно быстро Поиск Google предложит несколько вариантов обработки данных, поэтому он будет делать то, что вам нужно.

person ZombieSheep    schedule 11.11.2008

Как насчет региональных настроек ОС?

person kenny    schedule 11.11.2008

Следующее

выберите имя, псевдоним, формат даты из syslanguages, где langid = (выберите значение из master..sysconfigures, где comment = 'язык по умолчанию')

Возвращает один и тот же результат в тесте и в реальном времени

us_english английский mdy

Проблема в том, что систему нельзя переустановить, чтобы изменить. Мне нужно определить причину и устранить ее.

person Robert    schedule 11.11.2008

Зайдите в regedit и перейдите в следующее место в реестре Windows:

HKEY_USERS.DEFAULT\Панель управления\Международная\

Убедитесь, что поле «sShortDate» заполнено правильно.

Краткий формат даты, хранящийся в этом месте, много раз отличается от краткого формата даты, хранящегося в Панели управления Windows/Региональные параметры. Краткая дата в региональных параметрах предназначена для пользователя, под которым вы вошли в Windows. Поле «sShortDate» в HKEY_USERS в коротком формате даты, используемом службами Windows.

person Keith Maurino    schedule 11.11.2008
comment
Хорошо, я проверил каждого пользователя на веб-сервере и сервере БД, и все было правильно. Мне удалось найти один способ дублировать результаты. На сервере разработки я изменил sa на британский английский, и даты поменялись местами, поэтому я снова переключился на английский. Однако Live также настроен на английский язык. - person Robert; 11.11.2008