SQL Server 2000 - 从数据集/或C#集合批量插入

时间:2011-09-13 20:44:07

标签: c# sql-server-2000

我知道SQL Server 2000有bulk insert.它是否支持来自C#集合的批量插入,例如数据集?

我需要一次插入30行。如果我不需要,我不想为此创建30个DB连接。

2 个答案:

答案 0 :(得分:2)

查看SqlBulkCopy(根据论坛SQL 2000支持)。它易于使用。基本上只是为它提供一个数据表(或数据读取器),它会将行中的行复制到目标表。

答案 1 :(得分:0)

你可以在SQL 2000中使用DataSet插入,我从未尝试过,因为我从不使用DataSet。

http://www.dotnet247.com/247reference/msgs/3/16570.aspx上有一篇好文章:

(来自文章)

  

涉及的步骤   1.使用正确的select语句创建SqlDataAdapter

     

2.使用SqlDataAdapter

创建数据集和填充数据集      

3.在数据集中向表中添加行(对于您上面提到的所有操作,如无线电   选中按钮,启用复选框)

     

4.使用SqlCommandBuilder辅助对象生成   UpdateStatements。它非常易于使用的命令构建器。只是一个   调用SqlCommandBuilder构造函数。

     

5.完成后,在数据集调用中向数据表中添加行   SqlDataAdapter.update并将修改后的数据集作为参数传递。   这应该会自动将数据集中的行添加到   数据库。(如果没有发生数据库错误)

您是否考虑过XML?

在SQL 2000中使用XML并不像2008年那样好,但它仍然可行:

http://www.codeproject.com/KB/database/insxmldatasqlsvr.aspx

http://www.codeproject.com/KB/database/generic_OpenXml.aspx

http://support.microsoft.com/default.aspx?scid=kb;en-us;315968

您可以看到的另一个选择是:

  

打开连接。
      迭代插入

     

关闭连接。