从具有不同格式的文件将数据导入sql server

时间:2013-04-23 05:58:56

标签: c# sql-server ssis

我有一个程序,它可以监视服务器上的文件夹。当新文件(平面文件)进来时,程序(C#)读取数据,批量插入表中。它工作正常。

现在,我们扩展了系统。这意味着数据文件可以采用不同的格式(平面文件,csv,txt,excel ..),或者使用不同的列(我们需要将它们映射到表中的列)。

我的问题是:C#是最好的选择吗?或者,SSIS是更好的选择?

由于

3 个答案:

答案 0 :(得分:3)

我不一定会选择其中一个,而是根据文件类型和处理量选择。对于某些文件类型,它可能更容易使用C#,而其他一些SSIS更好用。

你的团队中是否有人对SSIS有好处?找到一个C#dev为你做这个工作比找到知道SSIS的人要容易得多。

未来需求/格式的可能性有多大?记住这一点也很重要。

我同意其他人所说的SSIS功能更强大,并为更复杂的转换提供支持,但问题是你真的需要吗?

答案 1 :(得分:2)

这取决于您的背景。不同的格式不应该决定SSIS。使用解决方案C#程序:你可以继续使用它,因为它之前运行稳定。易于部署,特定于您的域,易于配置。 使用解决方案SSIS:配置更复杂,所需的开发人员对SSIS有深入的了解。管理费要求超过C#计划。但是它很容易直观(有图表可以看到流程集成更容易)。 从我的观点来看,如果集成过程不需要复杂的业务规则,你应该使用C#程序。否则,如果集成过程需要规则复杂,SSIS会更强大。希望这有帮助。

答案 2 :(得分:2)

在C#应用程序中,我猜你正在使用SqlbulkCopy组件并与SSIS进行比较并不是那么强大。因此,如果您的数据量变得很大,那么C#应用程序将变得更慢。

如果您熟悉SSIS,我的建议是使用SSIS。在SSIS中,您可以实现在C#中开发的端到端解决方案,直到检查特定文件夹中的文件以将数据加载到数据库中。