0 голосов
спросил от в категории VB6
Всегда старайтесь использовать «однозначные даты» при передаче информации вокруг - особенно в базы данных и из них.

Что это значит? Это означает использование формата даты, который не может быть неверно истолкован независимо от того, в какой стране или часовом поясе вы находитесь, и какой язык используется.

Пример: 01/06/2016 будет 1 июня в Великобритании, но 6 января в США.

Вы довольно близки, потому что вы использовали формат dd MMM yyyy в качестве формата. Что хорошо на большинстве языков ... «27 февраля 2017» работает на английском, голландском, немецком и т. Д., Но на финском языке будет бессмысленным (финский язык для февраля - helmikuu). В наши дни нет ничего необычного в том, чтобы серверы SQL Server, размещенные в разных странах, были такими, где работает приложение. Также необычно, что пользователи из разных стран получают доступ к одной и той же базе данных SQL.

Существует два формата для дат, которые гарантированно будут работать для всех версий SQL Server. Используются также и для большинства других баз данных.
yy-MM-ddTHH24:mi:ss
and
yyyyMMdd HH24:mi:ss
Также стоит прочитать стандарт ISO для дат -
yy-MM-ddTHH24:mi:ss
# [
yyyyMMdd HH24:mi:ss
# ]

Если это не решит вашу конкретную проблему, тогда поставьте точку останова (F9) в строке
itmarr(1, 0) = Format(TxtDate.Text, "dd MMM yyyy")
и посмотрите содержимое TxtDate - вы Вероятно, вы обнаружите, что он не может быть отформатирован как дата вообще. Вы действительно должны добавить некоторую проверку или использовать элемент управления DatePicker.

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.

Категории

Добро пожаловать на сайт DraftingCode Q&A, где вы можете задавать вопросы и получать ответы от других членов сообщества.

Связанных вопросов не найдено

...