我的数据库表中有1000万个客户编号。我想每次为前100万客户运行查询,并将该数据保存在.csv文件中。我怎样才能使用SSIS包呢? 例如,
第一次:
选择名字,姓氏,客户ID 来自客户 客户ID在1到1,000,000之间
现在获取结果并将数据存储在本地的test1.csv文件中。
第二次:
选择名字,姓氏,客户ID 来自客户 客户ID在1,000,001到2,000,000之间
现在获取结果并将数据存储在本地的test2.csv文件中。
1000万客户号码应该是动态的,不是修复,下次可能是2000万,所以我们必须在数据库上运行20次相同的查询。
谢谢, 桑杰
答案 0 :(得分:1)
这是一个algorigthm OTTOMH
将表上的rowcount存储到名为TotalRows的变量中
将TotalRows除以20并将其存储到名为IncrementValue的变量中。
使用名为RowCounter的变量创建一个FOR LOOP,该变量从0增加到TotalRows增量增量值
创建一个名为SelectQuery的变量,其中evaluate表达式设置为true,并使用RowCounter和IncrementValue创建相应的Select语句
创建一个名为OutputFileName的变量,其中evaluate表达式设置为true,并使用RowCounter和IncrementValue创建文件名
创建一个名为OutputFilepath的FlatFile类型的连接管理器,并将其指向您希望它写入的所需文件夹
在连接管理器的表达式中,使用所需的文件夹路径和变量FileName
在for循环中使用DataFlow并添加OleDB数据源和平面文件目标
运行它
答案 1 :(得分:1)