sqlite .netframework4.8.1 返回

database is locked 我加了
await SqlSugarDb
.Db.CopyNew()
.Insertable(res)
.MySqlIgnore()
.ExecuteCommandAsync();
但是还是会出现锁库 是为什么
热忱回答(27)
-
91 VIP0
2周前后续 我添加了:Journal Mode=WAL;Synchronous=Normal;Cache Size=5000;Page Size=4096;Version=3; 就好了很多
0 回复 -
fate sta VIP0
2周前并发过高了吧。如果是警告是正常的。如果是异常提供具体测试用例
0 回复 -
91 VIP0
2周前@fate sta:还有个问题 大佬
abort at 23 in [INSERT INTO `FollowerTable`
(`CanDm`,`Country`,`DataGroupId`,`Description`,`FollowersCount`,`FollowingCount`,`HomeUrl`,`Is_blue_verified`,`MediaCount`,`Name`,`RestId`,`ScreenName`)
sqlite 出现这种 是什么意思 我是批量并发 不能加MySqlIgnore
0 回复 -
fate sta VIP0
2周前@91:警告是正常的framework sqlite驱动就这样,如果异常就是代码并发过高。
0 回复 -
fate sta VIP0
2周前把问题描述清楚是警告还是异常,还有有问题提供DEMO
0 回复 -
91 VIP0
2周前@fate sta:不是警告 你的197预览版本 sqlite insert 加了MySqlIgnore 但是批量并发你没有加MySqlIgnore 就会导致 插入不进去 库里已经有数据了 我又设置了唯一键
0 回复 -
91 VIP0
2周前@fate sta:使用sqlite数据库 重复不插入 - SqlSugar - .Net果糖网
0 回复 -
fate sta VIP0
2周前没听懂。批量插入也支持Ignore的。
0 回复 -
91 VIP0
2周前@fate sta:那你试试
await SqlSugarDb
.Db.Fastest<FollowerTable>()
.BulkCopyAsync(dislist);
呢
0 回复 -
91 VIP0
1周前@fate sta:大佬 你试试这个
那你试试
await SqlSugarDb
.Db.Fastest<FollowerTable>()
.BulkCopyAsync(dislist);
呢
是不是都没加MysqlIgnore
0 回复 -
fate sta VIP0
1周前@91:这个方法没有这个功能。
0 回复 -
91 VIP0
1周前@fate sta:那我大批量添加 怎么能去重呢 老板 比如我大批量添加了30W数据 我分了两批 第一批15W 我可以在内存去重 这个没问题 插入 然后第二批我插入15W 那么万一第一批和第二批都有重复的 那就插入不进去了
0 回复 -
fate sta VIP0
1周前直接插入30万不行吗
0 回复 -
91 VIP0
1周前@fate sta:那要是100W呢 大概几百万的数据吧 一次性上传 老大
0 回复 -
fate sta VIP0
1周前SqlSugar 5.1.4.198-preview03
db.Fastest<Student>().IgnoreInsertError().BulkCopy(list);
已支持
0 回复 -
91 VIP0
1周前@fate sta:预览版本 .netframework sqlite IgnoreInsertError使用的是 REPLACE INTO 为什么不使用INSERT OR IGNORE呢 replace into是先删除在更新 而insert orignore是忽略插入 是不是性能会更好些呢 老大
0 回复 -
91 VIP0
1周前@fate sta:预览版本 .netframework sqlite IgnoreInsertError使用的是 REPLACE INTO 为什么不使用INSERT OR IGNORE呢 replace into是先删除在更新 而insert orignore是忽略插入 是不是性能会更好些呢 也跟符合语义 老大
0 回复 -
fate sta VIP0
1周前@91:sqlite只有 replace 语法吧
0 回复 -
fate sta VIP0
1周前实在不行手动加锁吧 海量数据写入 SQLITE并不适合这种长时间的写入多线程
0 回复 -
91 VIP0
1周前@fate sta:有的老大
改下就成 一个是忽略插入 一个是删除更新
0 回复 -
91 VIP0
1周前还行 我sqlite一天写个几千万数据都可以的 只是想在优化下
@fate sta:
0 回复 -
91 VIP0
1周前@fate sta:
大批量数据也整下 好几个数据库都支持这种写法的 删除更新 忽略插入 可以搞两个方法
0 回复 -
fate sta VIP0
1周前SqlSugar 5.1.4.198-preview09
0 回复 -
fate sta VIP0
1周前replace 改成了 ignore
0 回复 -
91 VIP0
1周前@fate sta:
老大 你少打了个Into 现在会报错 near "`FollowerTable`": syntax error in "INSERT OR IGNORE `FollowerTable` (`
0 回复 -
fate sta VIP0
1周前SqlSugar 5.1.4.198-preview10
0 回复 -
91 VIP0
1周前@fate sta:没问题了
0 回复