将Unix文件导入SQL Server的最有效和最可靠的方法

时间:2009-05-14 17:08:30

标签: sql-server unix batch-file cross-platform

我在AIX上有三个文件需要导入SQL Server 2005数据库。这些文件由我控制的AIX脚本创建。我知道有几种选择可行,但我想了解其他人之前做过的事情以及最有效的事情。

以下是我正在查看的选项。

  1. 让AIX脚本将文件sftp到Windows,然后将Windows批处理作业bcp到SQL Server。
  2. 同样的事情,除了让Windows批处理作业获取文件而不是让AIX脚本PUT它们。
  3. 与#1相同,除了使用scp而不是sftp(什么是优点和缺点?)
  4. 在AIX上设置samba共享并让Windows批处理作业从那里将文件bcp到SQL Server中
  5. 与#4相同,但使用SSIS将它们作为平面文件从samba共享导入(不确定这将如何与行结尾一起使用)。
  6. 我还有其他不错的选择吗?出于某些客观原因,这些中的任何一个都更好吗?

2 个答案:

答案 0 :(得分:4)

我的建议是SSIS,它可以让你在插入之前更好地控制解析和读取控件。

答案 1 :(得分:4)

我推荐SSIS。它允许您设计整个数据流,包括FTP获取操作,转换应用程序以及将文件映射到表。

然后,如果需要,您可以使用SQL Server代理按计划运行SSIS包。

编辑:您可以在SSIS包中 define variables ,然后您可以通过代理作业传递该包。这可以包括您的FTP路径和凭据。

alt text http://www.webholstad.com/clarity/blogpics/ssissetvar.jpg