【问题标题】:Database records lost when debugging调试时数据库记录丢失
【发布时间】:2010-12-21 04:16:51
【问题描述】:

为什么我在调试 winforms 应用程序时会丢失数据库记录? 当我启动调试应用程序时,记录被保存到数据库中,但是当它重新启动时,所有的数据库记录都丢失了,并且数据库表是空的。如何在不丢失数据的情况下调试应用程序?

【问题讨论】:

    标签: c# database local


    【解决方案1】:

    点击数据库。转到属性。选择“如果较新则复制”。

    【讨论】:

      【解决方案2】:

      您确定数据库实际上正在更新吗?您是否检查过您正在调试的程序以外的其他内容?

      是否有您未提交的事务?

      编辑以回复您的评论

      听起来您可能需要在 Visual Studio 解决方案中更改数据库文件的属性 - 关闭“复制到输出文件夹”。

      【讨论】:

      • 我的记录在应用程序运行时保存到数据库中,这些记录保存在位于 bin 目录中的数据库中,当 vs 重新启动和重建时,我的数据库的新副本重新复制到旧数据库,我该如何保存数据库中的记录以防止丢失记录?
      • 嗨朋友,我想将输入的数据保存到项目根目录下的那个数据库,而不是 bin 目录下的那个数据库。
      【解决方案3】:

      听起来您可能会在事务中添加记录,然后不提交它。当您退出应用程序(调试会话)时,事务会回滚,并且您的所有更改都会丢失。

      【讨论】:

      • 如何将记录保存到数据库以防止丢失?
      • 在纯 SQL 中,您会说“提交”。在您的调试会话中,我不确定您需要做什么。也许您应该创建一个可以在调试器中调用的提交过程。了解您正在使用的 DBMS 也可能会有所帮助。
      • 我正在使用 sql-server db to 和 linq 来保存记录。当我想向表中插入记录时,首先我调用 InsertOnSubmit,然后调用 SubmitChhanges 进行保存。错了吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多