使用XML与INSERT…VALUES…SELECT…UNION ALL进行多次插入
-
28-10-2019 - |
题
对于SQL Server 2005,如果我想插入大约20或30行,每行三列,哪种方法更快,更有效?调用应用程序是C#4.0 .Net控制台应用程序。
a)将值作为XML传递给存储的proc并对其进行解析并执行插入操作
或
b)如此处建议的那样,使用INSERT...VALUES... SELECT() UNION ALL
构造一个SQL命令: SQL Server2005:通过单个查询插入多行?
谢谢。
解决方案
您尝试过吗?老实说,对于20或30行,您很难找到区别。在更大的范围内,我希望额外数据的成本以及XML提取数据所涉及的解析将使其成为效率较低的选择。在SQL Server 2008中,有一个更有效的VALUES()
构造函数,不需要UNION ALL
,并且还有一种称为表值参数的新方法。
不隶属于 StackOverflow