最佳实践:将数据从DGV写入SQL Server表

时间:2012-05-25 07:04:05

标签: c# winforms sql-server-2008-r2

我有一个未绑定的DataGridView,其中包含一个可见字段。

用户可以通过与此article

类似的方式将数据从剪贴板复制到此DGV中

现在,我想将此数据移动到SQL Server上的表中。

有人建议我做以下事情:

  • 创建一个存储过程,该过程接受一个参数并将该输入写入表
  • 将DGV中的项目循环到存储过程中,然后将它们写入表格

我是否可以抓住DGV中的所有项目并立即将它们插入目标表中,而不必循环?

或者循环方法(最多2,000次迭代)是这种情况下的最佳实践? (或者没有特别的最佳做法?!)

1 个答案:

答案 0 :(得分:1)

如果您正在考虑使用存储过程,那么您可以按照Erland Sommarskog提供的一些值的数组传递示例;

看看;

http://www.sommarskog.se/arrays-in-sql-2008.html< - 对于基于表值参数的SS 2008。

http://www.sommarskog.se/arrays-in-sql-2005.html< - SS 2005的选项。我已经使用XML method了很多次,发现它非常有用。

如果您使用的是SS 2008,那么您可以调查他的example of using the datatable as a source

不确定这些是否被认为是最佳做法,但它肯定是值得深思的。