首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有支持多线程的本地DB?

是否有支持多线程的本地DB?
EN

Stack Overflow用户
提问于 2009-03-31 09:09:17
回答 8查看 2.8K关注 0票数 3

我尝试了sqlite,通过使用多线程,只有一个线程可以同时更新db。我需要多线程同时更新数据库。有什么DB能胜任这份工作吗?

ps:我使用delphi6。

我发现sqlite可以支持多线程,

但在我对asgsqlite的测试中,当一个线程插入时,其他线程将无法插入。

我还在测试中。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-04-01 20:03:34

Sqlite在更新时锁定整个数据库(除非自从我上次使用它以来,这种情况已经改变了)。第二个线程不能同时更新数据库(甚至使用完全独立的表)。但是,有一个超时参数,它告诉第二个线程在失败前重试x毫秒。我认为ASqlite在数据库组件中显示了这个参数(我认为我实际上编写了这段代码,全部3行,但这是几年前的事了)。

将超时设置为大于0的值将允许多个线程更新数据库。然而,这可能会对性能产生影响。

票数 2
EN

Stack Overflow用户

发布于 2009-03-31 12:33:38

SQLite可以在多线程环境中使用.

看看此链接

票数 7
EN

Stack Overflow用户

发布于 2009-03-31 12:43:21

火鸟可以在嵌入式版本中使用,但是在本地使用标准(服务器)安装也没有问题。非常小,易于部署,并发访问。使用Delphi很好,您应该将其作为一种选择来研究。

也见StackOverflow question “在Delphi应用程序中使用哪个嵌入式数据库?”

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/700709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档