G M*_*han 2 sql-server datetime ssis timestamp etl
我有一个将 CSV 文件导入到数据库的 SSIS 包,并且该包将每天运行,因为它将新行附加到表的底部并且datetime目标表中没有列。
我想要做的是在目标表中创建一个新的date/timestamp并且每次加载数据时我都希望该表反映数据库中的加载时间Timestamp。
我不确定我是如何实现这一目标的。
使用您选择的日期时间函数的默认值更改目标表以包含新列。
ALTER TABLE DataDest
ADD CreateDate DATETIME
CONSTRAINT DF_DataDest_CreateDate DEFAULT (GETDATE());
Run Code Online (Sandbox Code Playgroud)
在您的包中,您可能需要打开数据流中的目标对象以获取表的新元数据,然后您必须单击“映射”选项卡,因为 SSIS 必须如此。新列应该会出现在那里,但您不需要对它做任何事情,除了确保 SSIS 知道它在那里。
在您的插入操作期间,SSIS 将不会加载该列,并且将为您填充当前日期时间的默认值。