我不确定具体是什么问题,但我无法在我的数据库中插入。
我使用.mdf或基于服务的数据库,所以我认为它可能与此有关
这是我用于插入的代码。我在服务器资源管理器查询中尝试了查询,它是100%正常工作
using (SqlConnection con = new SqlConnection(Db.ConnectionString))
{
con.Open();
using (SqlCommand cmd = new SqlCommand("Insert INTO Account Values('User','Password','Department')", con))
{
cmd.ExecuteNonQuery();
}
}
我也试过几个小时的调试。
我有另一个声明,它执行选择查询,它可以工作,所以我确信我的连接字符串
我也试过这个
using (var cn = new SqlConnection(Db.ConnectionString))
using (var cmd = new SqlCommand("Insert INTO Account Values('User','Password','Department')", cn))
{
cmd.CommandText = "Insert INTO Account Values('User','Password','Department')";
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
所有这三个都不起作用。
编辑: 我发现了问题,我刚刚意识到打开项目文件夹的时候。 我的Select Statement正在我的项目文件夹中查看我的.mbf 而insert语句进入Project / Bin / Debug文件夹,这非常奇怪,因为它们具有相同的连接字符串。
有人知道我该如何解决这个问题?
答案 0 :(得分:1)
通常在构造这样的语句时,如果不指定字段,则错误来自字段顺序错误或者您正在跳过字段。
最佳做法是指定字段和值,如下所示:
Insert INTO Account (fld1,fld2,fld3) Values('User','Password','Department')
将fldx替换为实际的字段名称