如何插入SQL Server Compact

时间:2013-11-03 04:55:43

标签: c# sql sql-server-ce

我正在使用SQL Server Compact数据库使用.NET 4.5和C#。

enter image description here

这是我正在使用的插入命令:

try
{
    conn.Open();
    String query = "INSERT INTO categories (cat_title) VALUES (@cat_title)";

    SqlCeCommand cmd = new SqlCeCommand(query, conn);
    cmd.Parameters.AddWithValue("@cat_title", cat_title);

    cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
    Debug.WriteLine(ex.Message);
}
finally
{
    conn.Close();
}

执行此操作后,我立即从表中获取结果以填充组合框。我可以看到新添加的项目。

但是,当我返回数据库资源管理器时,项目不在那里。如果我再次运行该应用程序,我可以看到我添加的项目。

如果我从数据库资源管理器中刷新dB,则应用程序中不再显示结果。

我这样做了吗?为什么结果会这样?

1 个答案:

答案 0 :(得分:0)

@marc_s和@ ta.speot.is是正确的,但对于那里的其他新手,我想我也可能会插话。

您在资源管理器中看到的数据库正在读取.sdf文件的不同实例,而不是您的连接字符串引用的文件。当您的连接字符串连接到bin / debug /文件夹中的.sdf文件时,资源管理器可能正在从您的主项目目录中读取.sdf文件。如果是这种情况,每次程序运行时,连接字符串引用的.sdf文件都将被覆盖。