【问题标题】:Best way to update a sql server table from a datatable从数据表更新 sql server 表的最佳方法
【发布时间】:2016-03-16 13:05:26
【问题描述】:

我们获得了更新 sql server 数据库所需的 excel 电子表格。我可以轻松地将电子表格读入数据表,它可以有数千行。所以我可以有一个与此类似的数据表:

id    data
1       A
2       B

等等。

我有一个这样的数据库表:

id    data    (more columns)
1       Y
2       Z

可以有多个数据字段,这是不可预测的。我需要将 id 1 的数据更改为 A。

我有一个可以输入 SQL 的文本框 UPDATE ITEMS SET data = {0} WHERE id = {1} 将执行所有更新。

我可以根据情况修改文本框中的 SQL。在本例中,我还可以将数据表中的列分配给占位符 {0} 和 {1}。

我想知道是否可以使用 SQL 以某种方式加入数据表,或者是否值得将整个数据表插入临时表然后进行大规模更新。或者我应该保持原样并循环遍历数据表。

【问题讨论】:

    标签: .net sql-server datatable


    【解决方案1】:

    如果我对您的理解正确,您可以使用 MERGE (https://msdn.microsoft.com/en-us/library/bb510625.aspx) 语句。创建 DataTable 并用 excel 电子表格中的数据填充它。然后将这些数据作为(之前创建的)自定义表类型变量的参数传递给使用合并语句更新数据的 sql 过程。速度非常快!

    【讨论】:

      猜你喜欢
      • 2023-04-07
      • 1970-01-01
      • 2010-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-08
      • 2013-06-07
      相关资源
      最近更新 更多