Обеспечить точность в столбце datetime - PullRequest
0 голосов
/ 19 июня 2020

Как установить точность в столбце datetime SQL, чтобы всегда сохраняемое значение было yyyy-MM-dd HH:mm:ss, т.е. без дробных секунд?

Я использую. NET и Dapper для вставки значения, и хотя я знаю, что в. NET нет дробной секунды, я вижу в базе данных, что значения имеют дробные секунды.

1 Ответ

2 голосов
/ 19 июня 2020

Если у вас datetime2(0) нет миллисекунд

Пример

Select NoMS   = convert(datetime2(0),getDate())
      ,WithMS = convert(datetime2(3),getDate())

Возвращает

NoMS                   WithMS
2020-06-18 20:06:21    2020-06-18 20:06:21.337

РЕДАКТИРОВАТЬ: Небольшое предупреждение:

datetime2() округляется в большую сторону

Например,

Select NoMS   = convert(datetime2(0),'2020-06-19 07:33:57.500')
      ,WithMS = convert(datetime2(4),'2020-06-19 07:33:57.500')

Возвращает

NoMS                 WithMS
2020-06-19 07:33:58  2020-06-19 07:33:57.5000

Замечание 58 секунд против 57,5000

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