Как преобразовать неверную дату в действительную дату в SQL - PullRequest
0 голосов
/ 15 марта 2012

У меня одна проблема с датой. Например, если формат даты 2010-10-10 22:10:00.000, это действительная дата, которая вставляется в мою таблицу базы данных.

Но если формат даты 2010-10-10 25:10:00.000, это недопустимая дата.Он проверяет, что количество часов больше 24, чем добавляет один день к дате, и вычитает 24 часа из отметки времени.

Пожалуйста, сообщите.

1 Ответ

2 голосов
/ 15 марта 2012

Почему вы позволяете людям вводить даты и время произвольной формы, чтобы они могли заполнить их бессмыслицей?Вы также планируете обслуживать 2010-13-13 и 2012-02-31?Добавьте в формы раскрывающиеся списки, чтобы пользователи могли выбирать только действительные даты и время и проверять их перед отправкой на сервер.

Хотя, вероятно, существует очень уродливый способ проанализировать этот мусор и поддержать все правилаВы хотите, чтобы пользователи ломались, это не будет красиво, и в некоторых случаях вы можете «исправить» опечатку и ввести дату / время, которые пользователь на самом деле не планировал.Но поскольку вы исправили их ошибку, они даже не подозревали, что совершили ошибку.

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