我无法弄清楚为什么下面的更新查询没有执行,任何建议:
static public void updateSelectedMainNewsImage(int newsID, string filename, string replace)
{
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();
SqlCommand updateNews = new SqlCommand("Update newsImages SET [newsImage] =@filename where [newsID] =@newsID AND [newsImage] =@replace", conn);
updateNews.Parameters.AddWithValue("@newsID",SqlDbType.Int).Value = newsID;
updateNews.Parameters.AddWithValue("@filename",SqlDbType.VarChar).Value = filename;
updateNews.Parameters.AddWithValue("@replace",SqlDbType.VarChar).Value = replace;
updateNews.ExecuteNonQuery();
conn.Close();
}
答案 0 :(得分:2)
如果它没有错误那么它正在工作。所有记录都不符合您的WHERE条件。
答案 1 :(得分:1)
您正在使用updateNews.Parameters.AddWithValue("@filename",SqlDbType.VarChar).Value = filename;
尝试用
替换它 updateNews.Parameters.AddWithValue("@filename",filename,SqlDbType.VarChar);
这是因为parameter.addwithvalue函数不需要设置value属性它有一个像上面这样的重载版本。我希望如果这可以帮助