我将数据保存到名为Settings.sdf
的数据库时遇到问题。我的文件很少:
- Settings.sdf
- SettingsDataSet.xsd
- SettingsDataSet.Designer.cs
- SettingsDataSet.xsc
- SettingsDataSet.xss
如果我尝试使用UPDATE
或INSERT 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();
如何解决这个问题?为什么这个命令不直接更新我的数据库?
答案 0 :(得分:1)
您可以调整数据库路径,必须设置完整路径:
调整:
string conString = "Data Source=" + Path.Combine(Your full path,"Settings.sdf");`
在查询末尾添加;
using (SqlCeCommand com = new SqlCeCommand("UPDATE Settings SET [Value] = (@loc) WHERE [Key] = 'Location';", con))
{
...
}
答案 1 :(得分:0)
在调试目录中的sdf文件中所做的更改,但是当您再次运行时,将再次创建sdf,删除create always并再次测试