Sql 如何将不同名称和相同模式的Excel文件导入数据库?
如何从每次具有不同文件名的excel源文件(示例excel文件名:abc123、123abc、ab123c等)将数据导入SSIS中的sql server表中实现这一点的一种可能方法是在Sql 如何将不同名称和相同模式的Excel文件导入数据库?,sql,excel,ssis,Sql,Excel,Ssis,如何从每次具有不同文件名的excel源文件(示例excel文件名:abc123、123abc、ab123c等)将数据导入SSIS中的sql server表中实现这一点的一种可能方法是在控制流选项卡中使用ForEach循环容器,然后在控制流任务中放置数据流任务。我已经在下面的例子中解释了这个过程。此示例使用SQL Server后端作为目标,使用Excel 97-2003format.xls作为源文件。请注意,Excel文件的格式应相同 逐步存储过程: 创建一个名为dbo.Location的表,如屏
控制流
选项卡中使用ForEach循环容器
,然后在控制流任务中放置数据流任务
。我已经在下面的例子中解释了这个过程。此示例使用SQL Server
后端作为目标,使用Excel 97-2003
format.xls
作为源文件。请注意,Excel文件的格式应相同
逐步存储过程:
dbo.Location
的表,如屏幕截图1所示。本例将通过读取具有相同布局的三个不同Excel文件来填充此表。屏幕截图显示执行包之前的空表c:\temp\
中创建两个Excel文件,如屏幕截图#2-#4所示。请注意,两个Excel文件的布局相同,但内容不同FolderPath
将包含Excel文件所在的路径FileExtension
将包含Excel文件扩展名(在本例中为*.xls),并且FilePath
应配置为指向一个有效的Excel文件(仅在Excel连接管理器的初始配置期间需要)User::FilePath
将在集合
部分配置的变量FolderPath
和FileExtension
的帮助下,包含文件夹c:\temp\
中的完整路径Excel文件Excel源文件
读取Excel文件数据,并放置一个OLE DB destination
将数据插入SQL Server表dbo.Location。数据流任务应如屏幕截图#10所示ExcelFilePath
和ServerName
,如屏幕截图所示数据流任务
属性上,将DelayValidation
设置为True,以便SSI在打开包时不会抛出错误对于处理.csv文件的相同过程,“平面文件连接管理器”上应使用哪些表达式?我说的是截图#15,但带有.csv文件。对于使用平面文件连接管理器的csv文件,表达式是不同的。这很有帮助。您是否可以演示如何导入不同的XML文件?XML源似乎没有表达式编辑器?!谢谢你对社区的帮助和工作。精彩的解释!ExcellentHow我可以用你的答案回答我的问题吗:(每次我改变表达时都会出错)为什么这个答案没有被接受为答案?