繁体   English   中英

ssis从excel导出到sql,与列数无关

[英]ssis export from excel to sql independently of the number of columns

我找不到答案,我认为这很容易:)

使用SSIS,我想从excel导入到SQL表中,而与列数无关,我不在乎折衷式是否具有3或33列。

如何完成这样的事情:从exceldataset选择*到mytable中,

如果您不能使用OPENROWSET函数并执行SQL任务。

这已经被回答过很多次了。 在SSIS中,源的元数据与软件包一起存储。 它不能改变。 做到这一点的唯一方法是通过编程方式更改包中的数据源定义,这显然并不简单。 您需要一个脚本任务并深入研究API。 在Excel中,通过展平,取消透视或任何需要的操作,或者在生成它的系统中,更改源文件都比较容易。

签出这个问题不是答案,而是一些指示。 它实际上处理不同的文件,而不是列。

最简单的方法是将Execute SQL Task与动态OPENROWSET命令一起使用。

由于您提到不能使用此方法,因此我认为您必须使用Script Task将Excel文件转换为csv文件,然后将平面文件导入SQL。

您可以参考以下链接以获取更多信息:

使用脚本任务将Excel转换为csv

导入具有不同标题的平面文件

如果您的Excel文件具有相同的列号,但标题是变量

其他有用的文章


如果您不希望使用这些方法之一,则必须以编程方式或为每个Excel文件使用BIML生成软件包,因为SSIS需要验证Excel文件的元数据,并且不支持使用同一Excel Source导入多个excel结构。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM