sql-server - 将平面文件导入 SQL Server 表时插入日期

标签 sql-server ssis etl flat-file import-from-csv

我正在尝试使用 SSIS 包将平面文件导入到 SQL Server 表中。该软件包计划每天运行。在导入文件之前我已经创建了一个额外的列。

例如:

2019 年 1 月 8 日的平面文件:

001,Tony Stark,Ironman
014,Steve Rodgers, Captain America

2019 年 1 月 9 日的平面文件:

414,Peter Parker, Spiderman
007,Clark Kent, Superman  

预期结果:

导入后,表格在 01/08/2019 上应如下所示

ID      Name              Alias                 Date
````    ``````            ``````                `````
001     Tony Stark        Ironman               2019-01-08  
014     Steve Rodgers     Captain America       2019-01-08  

2019 年 1 月 9 日点赞

ID      Name              Alias                 Date
````    ``````            ``````                `````
001     Tony Stark        Ironman               2019-01-08  
014     Steve Rodgers     Captain America       2019-01-08 
414     Peter Parker      Spiderman             2019-01-09
007     Clark Kent        Superman              2019-01-09 

最佳答案

您可以通过多种方式实现这一目标:

1- 将派生列添加到包

您可以在数据流任务中添加派生列转换,并使用包含包开始运行时间的[System::StartTime] 变量。或者您可以使用返回当前日期的 GETDATE() 函数。

2-向添加的列添加默认值

您可以将 GETDATE() 函数添加为该列的默认值,因此对于插入的每个新行,都会分配当前日期的值。

ALTER TABLE DestTable ADD CONSTRAINT DF_SomeName DEFAULT GETDATE() FOR [Date];

引用文献

关于sql-server - 将平面文件导入 SQL Server 表时插入日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54118806/

相关文章:

sql-server - 为什么我不能在SQL Server 2008中注册System.Web?

sql-server - 如何在 MS SQL Server 2008 中将几何数据转换为地理数据?

ssis - 如何设置 Azure 数据工厂管道中帐户存储中的 CSV 文件的路径

sql-server - 如何使用 SSIS 从 Excel 文件获取信息

python - BigQuery : result set in UI and from API have different number of rows. 为什么?

sql - Dotnetnuke 安装

SQL Server - 返回 sysobjects 的架构

sql-server - 如何在 SSIS 中追加来自两个源的两行?

具有自动调度功能的 Java 开源 ETL 框架

python - 将数据从数据库移动到另一个数据库时出错