Похоже, что datetime2
в некоторых случаях не может содержать значение datetime
. Ожидается ли это?
Обратите внимание на последние 2 столбца. Или это преобразование портит данные?
SELECT
DATETIMEFROMPARTS (2021, 2, 28, 10, 11, 12, 267),
CONVERT(datetime, DATETIMEFROMPARTS (2021, 2, 28, 10, 11, 12, 267)),
CONVERT(datetime2, DATETIMEFROMPARTS (2021, 2, 28, 10, 11, 12, 267)),
CAST(DATETIMEFROMPARTS (2021, 2, 28, 10, 11, 12, 267) AS datetime2)
Мне на самом деле не нужны эти преобразования, но у меня проблемы с Entity Framework, который генерирует SQL, преобразующий мой datetime
в datetime2
, что приводит к небольшим различиям при загрузке его в C# DateTime
datetime
?datetime
имеет точность до 1/300 секунды,datetime2
может иметь точность до 1/1000000 секунды. Он может содержать каждое значениеdatetime
и более. - person Larnu   schedule 28.02.2021