这里需要说明的是如何在你的SSIS Package中利用SQL Task创建临时表,然后在临时表中转换你需要的数据,然后将临时表中的数据导入到目的表,最后将临时表Drop掉。你可以看到如下Package的Image.
对于这个Package的说明:
- Excute SQL Task: Create a temp table
- Data Flow Task: USE temp table to clean up the data then load data to destination table
- Excute SQL Task: Drop temp table
- Send Email Task: If success send email to the DBA.
这里需要注意的是,SSIS Package在默认的情况下会首先验证每个Connection Manager连接是否成功,如果不成功就不执行。那么对于临时表因为是每次处理的时候临时创建,处理完就被Drop掉了。所以要保证这个包在处理的时候不出错我们需要设置一下Data Flow Task的属性,将Data Flow Task的DelayValidation 属性值由默认的False设置为Ture,这样就可以保证包在运行的时候才去Check Connection Manager连接的正确性,而不是先Check后运行。
综上所述我们就可以在ETL过程中灵活的运用TempTable了。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14321372/viewspace-566765/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14321372/viewspace-566765/