【问题标题】:Sql server CE 4.0 in a Visual studio project suddenly losing dataVisual Studio 项目中的 Sql server CE 4.0 突然丢失数据
【发布时间】:2011-05-17 12:41:52
【问题描述】:

我不确定这是我这边的设置问题还是一些错误,但我正面临一个非常奇怪的问题。

我正在 VS 2010 Winforms 项目中针对 SQL Server CE 4.0 进行开发。它像这样保存在项目中

现在发生的事情是,出于某种奇怪的原因,每当我在应用程序中遇到异常或对数据库进行架构更新时,我都会丢失所有测试数据。不只是一张表,所有的,除了模式对象之外的整个数据库。

请记住,我没有做任何事情来从模型或任何事情中重新生成数据库。它只是删除了所有数据,目前甚至无法完全重现。完全不可预测。即使数据被删除,架构仍然保持不变。

有人可以帮忙吗?

【问题讨论】:

    标签: .net winforms visual-studio-2010 sql-server-ce-4


    【解决方案1】:

    好的,我想出了解决方案 - 我很愚蠢,但我认为其他人也会犯同样的错误,所以这里是 -

    我将连接字符串用作 |DataDirectory|\LocalDB.sdf 并希望它从项目目录中获取它 - 结果它从调试文件夹中获取它。现在我知道了,这很有意义。

    因此,每当我进行架构更新时,原始数据库都会发生更改,因此它替换了调试文件夹中存在的 LocalDB。由于项目中的数据库从来没有任何数据,我曾经不必要地获取空数据库。

    【讨论】:

      【解决方案2】:

      实际上,在 SQL Server CE 数据库(例如架构中)发生更改后,它会用新副本替换应用程序内部的数据库。如果sqlserver ce中的数据库与应用程序内部的数据库有不同的数据集,则应用程序内部的先前数据将丢失。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多