繁体   English   中英

插入和更新不会更改数据库(SDF)

[英]Insert and update doesn't change database (sdf)

我将数据保存到名为Settings.sdf数据库时遇到问题。 我有几个文件:

- Settings.sdf
- SettingsDataSet.xsd
 - SettingsDataSet.Designer.cs
 - SettingsDataSet.xsc
 - SettingsDataSet.xss

如果尝试使用UPDATEINSERT INTO查询,则不会更新数据库( Settings.sdf ),而仅更改缓存文件中的数据(无论位于何处)。 我正确地使用了所有SqlCeCommands 例如:

string conString = "Data Source=Settings.sdf";
con = new SqlCeConnection(conString);
con.Open();
...
using (SqlCeCommand com = new SqlCeCommand("UPDATE Settings SET [Value] = (@loc) WHERE [Key] = 'Location'", con))
{
    com.Parameters.AddWithValue("@loc", device.Location);
    com.ExecuteNonQuery();
}
...
con.Close();

如何解决这个问题? 为什么此命令不直接更新我的数据库?

您可以调整数据库路径,必须设置完整路径:

  1. 调整:

     string conString = "Data Source=" + Path.Combine(Your full path,"Settings.sdf");` 
  2. 添加; 在查询结束时

using (SqlCeCommand com = new SqlCeCommand("UPDATE Settings SET [Value] = (@loc) WHERE [Key] = 'Location';", con))
{
...
}

在debug目录的sdf文件中更改了maded,但是当您再次运行sdf时,它将再次创建,请始终删除创建并再次测试

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM