gpt4 book ai didi

asp.net - 插入多行的最佳方法 (ADO.NET)

转载 作者:行者123 更新时间:2023-12-03 00:37:52 25 4
gpt4 key购买 nike

我正在向现有 ASP.NET 项目添加功能。该代码调用存储过程将行添加到特定表。我还需要允许其中一列具有多个值的选项,在这种情况下,将为该列中的每个值添加一行。

我知道我可以为每一行调用一次插入方法,但这听起来效率非常低。我知道我可以编写多行,用分号分隔,然后在一个请求中将它们发送到数据库。但是现有代码调用存储过程,因此多个插入语句需要我修改现有代码。

请注意,多个值将作为多行存储在文本框中,每个值一行,并且必须明显检查是否正确输入。

有没有更简单的方法来解决这个问题?

最佳答案

SQL Server 2008具有“表类型”参数,允许多行作为参数。 this SO question 中定义了一个示例。

SQL Server 2005+ 具有良好的 XML 处理能力。我们目前将其用于小型数据集。 SQL Server 2000 XML 处理不太好。

对于所有版本,您可以创建临时表,然后调用使用该表的存储过程。您可以使用 SQLBulkCopy 加载表。对于多行很有用。

一般来说,这个问题是一个常见问题。 Erland Sommarskog 有一篇文章“Arrays and Lists in SQL Server 2005 and Beyond ”,这是有关该主题的权威文章(其中一篇)(他还有更多文章)。

摘要:

  • 表类型(SQL Server 2008+)
  • XML(使用 SQL Server 2005+ 更容易)
  • 临时表(所有版本)

关于asp.net - 插入多行的最佳方法 (ADO.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4543666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com