C# 如何使用SSI将特定列从DataTable添加到DB?

C# 如何使用SSI将特定列从DataTable添加到DB?,c#,sql-server,ssis,C#,Sql Server,Ssis,我有一个CSV文件,从那个文件中,我必须考虑两个列,假设a & b < /p> 现在,我的要求是将CSV中A列中的所有值映射到表中,并使用B列中的值更新表中的其他列 到目前为止,我已经创建了一个包含这两列的DataTable。但是我不知道如何使用这个数据表更新数据库 我知道SSIS可以帮我。但以前从未使用过 请帮帮我:这里有一些关于你必须做什么的指导。如果您使用@Manjoor的引用来获得这方面的帮助,您应该能够做到这一点 在新的SSIS包中,需要在控制流中添加一个数据流任务,在连接管理器中添加

我有一个CSV文件,从那个文件中,我必须考虑两个列,假设a & b < /p> 现在,我的要求是将CSV中A列中的所有值映射到表中,并使用B列中的值更新表中的其他列

到目前为止,我已经创建了一个包含这两列的DataTable。但是我不知道如何使用这个数据表更新数据库

我知道SSIS可以帮我。但以前从未使用过


请帮帮我:

这里有一些关于你必须做什么的指导。如果您使用@Manjoor的引用来获得这方面的帮助,您应该能够做到这一点

在新的SSIS包中,需要在控制流中添加一个数据流任务,在连接管理器中添加两个连接

您的第一个连接将连接到CSV文件。第二个连接将连接到数据库表

转到“数据流”选项卡以添加 数据流任务的详细信息。 向数据中添加平面文件源 流 配置要引用的源 您的平面文件连接。 添加OLEDB命令数据流 数据流的转换。 将两个对象链接到 创建绿色通道的数据流路径 从源到目标的箭头。 编辑OLE DB命令对象的 并将其配置为更新表 联系 在OLEDB命令中,您的SQLCommand将如下所示

UPDATE TableName
SET ColumnB = ?
WHERE ColumnA = ?
问号是将在OLE DB命令中定义的参数


这是一个基本的解决办法。因此,如果性能是一个问题,您将需要开发增强的解决方案。

更好地学习。这里没人教你ssis。谢谢你的帮助。到目前为止,我还没有这样做,但是现在在OLEDB命令中设置SQL命令时,我得到了一个错误:multi-part i.Value无法绑定错误。那么你知道这个错误是什么时候发生的,为什么发生的吗?@Amit,我不知道这个错误表明了什么。听起来它与分配给SQL语句的参数有关。您可以查看OLEDB命令并查看SQL语句,然后在“列映射”选项卡上,确保有到SQL语句参数的正确列映射。