Хотя это почти то же самое, что сказал HoneyBadger, я немного расширяюсь, так как в OP не используется выражение GETDATE()
в SQL Server. Значение 2018-05-02 16:45:15.619
никогда не может быть возвращено GETDATE()
(Transact-SQL), поскольку оно точно с точностью до 1/300 секунды (таким образом, последняя цифра может быть только каждые 0,3 и 7 (технически 0, 333333333 ~ и 666666666 ~, поэтому последняя цифра 7, так как она округлена в большую сторону)).
В SSIS выражение GETDATE()
возвращает тип данных DB_TIMESTAMP
. Согласно Документация :
Структура метки времени, которая состоит из года, месяца, дня, часа, минуты,
секунда и доли секунды. Дробные секунды имеют максимум
шкала из 3 цифр.
Таким образом, последние 4 символа теряются. К сожалению, я не верю, что в SSIS есть функция, которая возвращает текущую дату и время с необходимой вам точностью. Таким образом, если вам нужен этот высокий уровень, вам, вероятно, потребуется использовать выражение в SQL Server, например, SYSDATETIME()
, которое рекомендовал HoneyBadger.