1

我有一个应用程序使用:

QString databasePath = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
    databasePath += "/MyApp.db";
    qApp->setProperty("MYAPP_DATABASE_PATH", databasePath);

为数据库创建路径

有没有办法让另一个应用程序使用相同的路径来访问同一个数据库?

4

1 回答 1

0

来自 SQlite 常见问题解答:

SQLite 使用读/写锁来控制对数据库的访问。(在不支持读取器/写入器锁的 Win95/98/ME 下,改为使用概率模拟。)但请注意:如果数据库文件保存在 NFS 文件系统上,此锁定机制可能无法正常工作。这是因为 fcntl() 文件锁定在许多 NFS 实现中被破坏。如果多个进程可能尝试同时访问该文件,则应避免将 SQLite 数据库文件放在 NFS 上。在 Windows 上,Microsoft 的文档说如果您没有运行 Share.exe 守护程序,锁定可能无法在 FAT 文件系统下工作。对 Windows 有很多经验的人告诉我,网络文件的文件锁定非常有问题,而且不可靠。如果他们说的是真的,

于 2018-06-23T18:30:40.467 回答