SSIS, по крайней мере в настоящее время, имеет «известный» недостаток в том, что тип значения переменной, DateTime
имеет точность только с точностью до секунды;фактически так же, как datetime2(0)
.Поэтому, если вам необходимо сохранить что-то более точное, чем секунда, например, если вы используете datetime
и 1/300 секунды, или если вы используете datetime2
с точностью до 1 или более, значениевведите DateTime
, не будет служить вашей цели.
Поэтому существует несколько различных вариантов сохранения значения в виде String
или числового значения.Это, однако, идет со своими собственными проблемами;самое главное, что ни один из этих типов данных не является типом данных даты и времени.
Следовательно, это зависит от вашей цели.Скорее всего, я бы использовал тип данных String
и убедился, что он имеет формат ISO ('yyyy-MM-ddThh:mm:ss.nnnnnnn'
).Если вы затем используете что-то вроде Задачи T-SQL, вы можете передать свою переменную как нормальную для задачи, и механизм обработки данных будет интерпретировать буквенную строку как datetime2(7)
(или какую бы точную литерацию вы не использовали).