gpt4 book ai didi

c# - 如何正确清理(或参数化)SQL 压缩插入语句

转载 作者:太空宇宙 更新时间:2023-11-03 22:16:41 26 4
gpt4 key购买 nike

EDIT 请注意,该语句不是单个插入。它使用 foreach block 插入多个值数组。

StringBuilder sbSQL = 
new StringBuilder(
"INSERT INTO [table] ([fk_id], [Description], [Title] ) VALUES");

foreach(var item in items) {
sbSQL.AppendFormat("({0},'{1}','{2}'),",
item.fk_id, item.description, item.title)
}

myDataContext.ExecuteCommand(sbSQL.Remove(sbSQL.Length - 1, 1).ToString());
myDataContext.SubmitChanges();

我真的很想使用这种方法,因为它使数据库插入速度提高了 2 倍。但我不知道我应该如何参数化它。

最佳答案

table value parameters (SQL Server 2008 的新增功能)- 这些允许您一次性传递所有值。

唯一的问题是这些没有融入 Linq2SQL - 因此您需要提供自己的方法。

参见 this博文示例。

关于c# - 如何正确清理(或参数化)SQL 压缩插入语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4864227/

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