2010-12-15 58 views
0

我们的应用程序使用SQLite数据库文件来保存一些数据。应用程序在启动时打开文件中的数据库,读取并写入文件,并在退出时关闭它。访问SQLite文件的应用程序的多个副本?

不幸的是,我们不能禁止某人同时运行我们的应用程序的两个副本。如果发生这种情况,可能会有两个应用程序副本试图同时读取和/或写入文件。我想这对于数据库文件来说不会很好。

我们可以做些什么来避免导致用户数据丢失?如果同时启动应用程序的第二个副本,我们是否应该避免打开数据库?或者有什么更聪明的我们可以做?

谢谢。

+1

请阅读常见问题解答http://www.sqlite.org/faq.html#q5 – 2010-12-15 20:44:40

回答

2

任何理智的数据库提供者,包括sqlite,如果有两个人同时访问它,它不会损坏你的数据库。如果无法并行运行请求,大多数请求会对请求进行排队。

现在你的应用对数据做了什么,这是你的应用的问题,但不要担心数据库本身。

+0

鉴于SQLite的正是基于在一个单一的文件,你确定这真正?或者DLL做了某种黑魔法,以确保即使两个人同时使用该文件,它会一切正常吗? – Colen 2010-12-15 20:42:30

+0

我确定sqlite不会损坏你的数据库,是的。请记住,它不仅仅是一个文件,而是通过api访问它,它将为您处理访问同步。 – Blindy 2010-12-15 20:48:39

相关问题