日期:2014-05-17  浏览次数:20523 次

用ssis导入平面文件时,怎么动态跳过平面文件的前n行?
我只知道设置连接管理器里平面文件的datarowstoskip属性,但我想根据目标表现有的行数来设置它,这样就不用每次导入已经导入的数据了,请问怎么做呀?
ssis?datarowstoskip ssis 平面文件?动态

------解决方案--------------------
平面文件是指文本文件吗?
建议将其内容导入到一个固定表tbA里,再写一个sql语句将目标表tbB里已有的数据过滤掉

--过滤掉目标表 已有的数据
select * from tbA t1 where not exists(select 1 from tbB where 关联字段=t1.关联字段)

------解决方案--------------------
SSIS可以指定从第几行开始读的,另外你可以做一个Identity的列到临时表然后删除前面的列。 
------解决方案--------------------
试试SQL脚本导入,用bulk insert命令,有个FIRSTROW参数,指定其值为目标表行数即可.

参考 http://msdn.microsoft.com/zh-cn/library/ms188365(v=sql.105).aspx