gpt4 book ai didi

c# - 如何使用servicestack批量sql调用

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

我有一个应用程序几乎连续写入记录以响应系统事件。我正在使用 C# ServiceStack Ormlite。我想知道是否有一种简单的方法来批处理这些插入,这样它就可以收集 X 个插入,然后写入一个事务,而不是一次写入每个插入。这将减少磁盘使用并加快应用程序的速度(其他事情正在发生)。

Win 10、VS2019 C# Sqlite

最佳答案

您可以使用 InsertAll(),它比单独的 Insert() 语句更有效,因为它在单个隐式事务中执行所有插入,并重用相同的参数化插入语句对于每条记录,但它不如构建单个 SQL 语句并将其发送到 RDBMS 那样有效:

var sb = new StringBuilder();
foreach (var row in rows)
{
sb.Append(db.ToInsertStatement(row)).AppendLine(";");
}
db.ExecuteSql(sb.ToString());

关于c# - 如何使用servicestack批量sql调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58229317/

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