数据库更改在重建.SLN(VS2008)时回滚

时间:2010-06-28 19:18:04

标签: .net visual-studio-2008 sql-server-2008 tableadapter

所以,伙计们。在这里发生了一件有趣的事。

我有一个在VS2008中制作的Windows窗体应用程序,它直到最近才连接到SQL Server 2008数据库。我能够编辑,插入,删除或选择数据库中的任何各种表,并且提交了更改 - 每次我通过SQL查询对数据库进行更改时,该更改都会反映在数据库中。< / p>

然而,在过去几天内,我已将数据库文件导入VS studio .SLN,并将我的数据集数量从三个减少到一个(为方便起见,将不同的表组合在一起),现在 - 更改我对数据库的make不会提交。

我观察到以下行为:

1)从表中插入或删除记录没有被提交 - 下次运行我的程序时,删除的记录又回来了,任何插入的记录都没有了。以前,Insert和Delete似乎在运行时会提交更改。

2)使用UPDATE命令手动提交更改工作 - 保留添加的记录,删除的记录保持不变,但是......

3)如果我因任何原因重建解决方案,数据库会“重置”到我第一次更改数据库位置时的状态。

有没有人知道我现在做的不同之处会产生这种行为吗?

2 个答案:

答案 0 :(得分:2)

在Solution Explorer窗口中选择.mdf。在“属性”窗口中,将“复制到输出目录”更改为“如果更新则复制”。

答案 1 :(得分:0)

  

我已将数据库文件导入   VS工作室.SLN

仔细查看项目文件夹。您可能会在项目的根目录中找到.MDF文件,在Bin / Debug中找到另一个(工作副本)。在每个(重新)构建上,将覆盖工作副本。

换句话说,它是设计的。