Проблема с региональными настройками где-то - PullRequest
0 голосов
/ 12 ноября 2008

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

Я также отметил, что даже установка Session.LCID на самой странице не имеет никакого значения, чем когда-либо.

Каким образом среды могут быть такими, чтобы между тестом и активным сайтом asp в режиме реального времени менялись даты, введенные с помощью SQL, но не на тесте.

Для обоих IUSR установлено значение UK, для обоих пользователей установлен UK, для обоих учетная запись SQL установлена ​​на американский английский, а для Session.LCID установлено значение 3081 (австралийский английский)

Почему выполняется тестирование? Вставьте в значения даты-столбца '01 / 03/2008 'и вставьте '01 / 03/2008', а в режиме реального времени вставьте '03 / 01/2008 ''

Настройки выглядят абсолютно идентичными. Это должно быть выяснено в ближайшее время, я очень боюсь, что мы никогда не узнаем. Проблема в том, что мы не можем изменить код или что-либо еще. Все, что я могу сделать, это расследовать и сообщить им причину. Но я не могу его найти!

Это VB6 / ASP, и это заставляет меня делать Лалли.

Доступ к базе данных осуществляется через системный DSN, настроенный для использования правильной учетной записи SQL.

Какая другая информация может вам понадобиться.

Ответы [ 2 ]

1 голос
/ 12 ноября 2008

В SQL Server Management Studio в разделе Безопасность - входы в систему щелкните правой кнопкой мыши пользователя, к которому вы подключаетесь, и выберите «Свойства». Нижнее поле со списком помечено «Язык по умолчанию», замените его на «Британский английский» ( не просто «Английский»).

sp_configure 'default language' устанавливает язык по умолчанию для вновь создаваемых имен входа , и именно он хранится в sysconfigures.

Я предполагаю, что язык не задается в строке запроса?

0 голосов
/ 12 ноября 2008

Я рекомендую вам изменить код, который взаимодействует с базой данных. Существует два однозначных формата даты, которые вы можете использовать с SQL Server.

Вы можете использовать yyyy-mm-ddThh: mi: ss.mmm или YYYYMMDD hh: mi: ss.mmm

SQL Server никогда не будет неверно интерпретировать даты, если вы используете один из 2 форматов, перечисленных выше.

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

Format(YourDateVariable, "yyyymmdd hh:nn:ss")
...