我正在尝试开发基于Windows的应用程序,其中多个用户同时访问同一个数据库。 SQLite能否一次支持多次访问? SQLite在这方面是否稳定?是什么让SQLite比MS SQL CE更好或更差?
感谢。
答案 0 :(得分:52)
是的,SQLite可以同时支持多个用户。但是它在写入时会锁定整个数据库,所以如果你有很多并发写入,那么它不是你想要的数据库(通常数据库被锁定的时间是几毫秒 - 所以对于大多数用途来说这没关系)。但它经过了很好的测试,非常稳定(并且被广泛使用),所以你可以相信它。
您可以阅读此简短文档,了解何时使用SQLite,而不是:http://www.sqlite.org/whentouse.html
答案 1 :(得分:10)
如果并发写入是个问题,您可能需要查看Berkeley DB。 SQL API完全兼容SQLite。实际上,它整合了Berkeley DB存储引擎的SQLite执行程序,支持支持多个并发写操作。
答案 2 :(得分:9)
是。
来自paragraph #5中的SQLite FAQ:
多个进程可以同时打开同一个数据库。多个进程可以同时执行SELECT。但是只有一个进程可以随时对数据库进行更改。