我使用Delphi 7和ZeosLib 6.6.6访问SQLite3数据库。
使用共享数据库的最佳做法是什么。
我计划将数据库文件(data.db3)放在共享位置。
Delphi应用程序位于每个用户的本地台式计算机上。
我想知道如何管理数据库锁定。检测数据库是否被某些用户锁定,等等。
感谢。
答案 0 :(得分:4)
SQlite3默认情况下在同一台计算机上本地处理数据库共享。您无需做任何事情,只需在硬盘上多次打开数据库即可。当然,它确实有一个开销,locking will make it slower比从一个独特的进程访问。
但是,如果“在共享位置”是指网络驱动器,正如您的问题所示,它可能无法按预期工作。
通过网络锁定文件并不安全(至少在Windows世界中)。见http://www.sqlite.org/cvstrac/wiki?p=SqliteNetwork
您应该依赖真正的客户端/服务器方法,仍然可以使用服务器上的SQLite3,以及通过网络访问它的客户端。参见例如我们的RESTful server使用JSON和几个协议。
答案 1 :(得分:0)