Sqlite error 5: database is locked 返回
在做数据同步时,我开启了事务,在插入的时候调用了动态类的方法,结果报错:Sqlite error 5: database is locked
dstDb.BeginTran();
foreach(var srcModel in srcList )
{
await dstDb.CopyNew().InsertableByObject(srcList).ExecuteCommandAsync();
}
dstDb.CommitTran();
或者说InsertableByObject有没有批量提交的方法:AddQuene(),我猜想不频繁地打开关闭数据库是不是就不报错了
热忱回答(4)
-
fate sta VIP0
2024/8/23var newdb= dstDb.CopyNew();
下面全部用 newdb 保证同一个db
0 回复 -
笑语流年 VIP0
2024/8/25意思是var newdb= dstDb.CopyNew();要写在循环的外侧是吗?
0 回复 -
fate sta VIP0
2024/8/25var newdb= dstDb.CopyNew();
newdb.BeginTran();
foreach(var srcModel in srcList )
{
await newdb.CopyNew().InsertableByObject(srcList).ExecuteCommandAsync();
}
newdb.CommitTran();
0 回复 -
笑语流年 VIP0
2024/8/26我用的是SqlsugarScope ,并且是单例的,这样是不是不用CopyNew也是线程安全的?
0 回复