共享计算机之间缺少数据



我有一个设置,我在办公室有一台电脑,在家里有另一台电脑,项目数据通过OneDrive共享。这纯粹是为了我自己的方便,我一次只在一台计算机上工作,当我不在两台计算机上使用它时,我会关闭 Visual Studio。

我当前的问题涉及一个通过OneDrive同步的项目,但使用SQL Server LocalDB数据库进行开发和测试,但是,尽管文件在两台计算机之间同步,但在一台计算机上插入的数据不会出现在第二台计算机上运行的查询中。

同步仅在 Visual Studio 关闭后发生,因为文件锁定会阻止该过程。我已经验证了.mdf和.ldf文件都被复制(文件大小和修改日期是正确的(。我还通过外部硬盘驱动器物理复制了文件以排除OneDrive同步步骤,但问题仍然存在。

我还验证了即使在复制文件后,插入的数据仍然存在于完成插入的计算机上,但在第二台计算机上执行 SELECT 时不会出现。

我的印象是 LocalDB 只使用 .mdf 和 .ldf 文件,其他地方是否有缓存文件也需要同步?

所有代码和其他项目文件都同步得很好,只有数据库遇到此问题。

我知道这对大多数人来说可能是一个奇怪的设置,如果我在团队环境中,我永远不会这样做,但我希望对可能出错的地方有一些见解。

很抱歉给任何人带来麻烦,我似乎自己已经解决了这个问题。

只是为了纯粹的理智,我尝试分离然后重新附加第二台计算机上的.mdf文件(未拾取 INSERT 数据的那台计算机(,并收到有关 LocalDB 实例的版本对于该文件来说太旧的错误。

事实证明,完成 INSERT 的计算机正在运行 v13 实例并将.mdf文件升级到该版本,而另一台计算机正在运行 v11 实例。两台计算机现在在同一实例版本上运行,现在显示缺少的数据。

最新更新