我认为我的SQLite连接遇到数据库连接超时,但我不确定如何提高连接超时.可以使用ConnectionString.DefaultTimeout设置命令超时,但Connection.ConnectionTimout是只读的.有什么建议?
谢谢,Brian
超过SQLite查询的默认(30秒)超时表明您的方法存在问题.
当并发连接太多时,通常会发生超时.当您有交错的写/读事务时,SQLite表现不佳.
确保在单个事务中分块相关的SQL语句(性能增益可以是x1000!).
另一个提示:默认情况下 - 当您启动事务(BeginTransaction)时 - 默认行为是立即获得写锁定.尝试使用BeginTransaction(deffered)版本,并指定您希望延迟获取写锁,直到实际需要它为止.如果有多个读者,这将有助于您,因为现在他们可以同时运行.