1

对于 SQL Server 2005,如果我想插入大约 20 或 30 行,每行包含三列,哪种方法更快更有效?调用应用程序是 C# 4.0 .Net 控制台应用程序。

a) 将值作为 XML 传递给存储的 proc 并对其进行解析并执行插入
或b)按照此处的建议
构造一个 SQL 命令: SQL Server 2005: Insert multiple rows with single query ?INSERT...VALUES... SELECT() UNION ALL

谢谢你。

4

1 回答 1

1

你试过了吗?老实说,对于 20 或 30 行,你真的很难找到不同之处。在更大的范围内,我预计额外数据的成本和涉及 XML 以提取数据的解析将使其成为效率较低的选择。在 SQL Server 2008 中,有一个更高效的VALUES()构造函数不需要UNION ALL,还有一种称为表值参数的新方法。

于 2012-02-21T19:02:00.843 回答