我想在短时间内将 SFTP 与 SQL Server Integration Services 结合使用。由于数据是客户信息,我们无法通过电子邮件传递此敏感信息,并且公司的隐私政策不允许供应商直接写入 SQL Server 数据库。我们提出的解决方案是使用 SFTP 从供应商获取文件,并使用 SQL Server Integration Services 将数据加载到数据库。我们希望将其全部集成到 SSIS 包中,但 SSIS 没有本机 SFTP 选项。这怎么办?
Here是一个使用这种方法的网站,但是这个方法太长,步骤很多。 我完全需要一个办法,尽快完成150个包裹。
如果您已经有一个从 FTP 下载文件(到本地临时位置?)然后将这些文件导入 SQL 的工作流程,并且您只想用 SFTP 下载替换 FTP 下载(保持导入步骤不变),您可以:
只需使用执行进程任务来执行任何命令行SFTP客户端来执行下载。
我为我的 WinSCP SFTP 客户端编写了一个指南,它可以做到这一点:SSIS/SSDT 的 SFTP 任务。
您会在这里或其他地方找到无数的问题,展示如何编写用于 SFTP 下载的脚本(Windows 批处理文件)(使用 WinSCP、OpenSSH
sftp
或其他客户端)。这不是 SSIS 特定的。
或使用Script任务来使用您喜欢的任何SFTP库。
我还有 WinSCP .NET 组装指南:
使用 SQL Server Integration Services (SSIS) 中的 WinSCP .NET 程序集