我有一个用逗号分隔的记事本文件填充的sql表。在表格中,我对第一列A有12个不同的列值:
select distinct ColumnA
From Table
值为A01,A02,A03等。
我想要做的是使用SSIS中的循环动态创建表,而不是通过
手动创建select *
into A01
from Table
where col1 = 'A01'
总共有20,000多行不同的A01 - A12。
在SSIS中进行此操作的最佳方式是什么?所以每个值,即A01,A02都填入自己的表中?
谢谢
答案 0 :(得分:0)
如果您想在SSIS中执行此操作,可以使用Conditional Split transformation
,根据col1
的值将每行发送到不同的输出。
至于动态创建表,您需要在数据流之前执行此操作。如果要使用循环,可以使用Execute SQL
任务获取col1
的不同值,循环遍历该记录集,并执行执行CREATE TABLE的另一个Execute SQL
任务言。
如果要在将记事本文件导入表之前执行此操作,则需要使用脚本任务来读取文件并生成CREATE TABLE语句。