sql-server - 使用 SSIS 导入空白 Excel 列

标签 sql-server excel ssis etl

我正在创建一个 SSIS 包来将 Excel 文件(具有不同的布局)导入到一个有 150 列的 SQL Server 表中。

SSIS 包有一个 Foreach 循环容器,其中有一个数据流任务,它有一个 Excel 源组件和一个 OLE DB 目标组件。

将为每个 Excel 文件运行数据流任务,因此 Excel 源组件需要为每个文件工作。

我已经使用 150 个长度为 255 的 Unicode 字符串列设置了 Excel 源组件,并将 ValidateExternalMetadata 设置为 False,但是在测试时出现错误:“在数据源中找不到列“F143”包含 142 列数据的 Excel 文件。

我的问题是:如何让包忽略此错误并导入存在的列,或者是否有另一种处理上述情况的方法?

最佳答案

打开 Excel Source 任务的编辑器。在左侧 Pane 中,选择“错误输出”。列 Pane 下方是一行,上面写着“将此值设置为选定的单元格:”旁边有一个下拉菜单。从下拉列表中选择“忽略失败”。现在转到列 Pane 并选择“错误”列下的所有 150 行,然后点击下拉框旁边的“应用”。这应该将所有 Excel 列设置为“忽略错误”。点击“确定”,然后你就可以开始了。

关于sql-server - 使用 SSIS 导入空白 Excel 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47718881/

相关文章:

c# - 添加到 sql server 数据库时修剪 byte[]

mysql - 编写如何删除扩展名并放入单独列的脚本

c# - 如何使用脚本任务声明工作表?

ssis - 决定使用 SSIS 与 openquery 之间的基础知识?

sql - 在 SQL Server 2005 中是否有任何方法可以按文本(或 ntext)进行区分或分组?

sql - 将列复制到具有重复值的另一行

excel - 从 Excel 连接到 Internet 服务器上的 Access 数据库

ssis - 使用 SQL Server Business Intelligence Development Studio 创建新的 Integration Services 包时无法加载类型错误

vba - Excel SortFields 添加然后排序

c# - 将 Excel 列字母转换为数字的算法是什么?