日期:2014-05-17  浏览次数:20918 次

这段代码帮忙看下那里错了,
/// <summary>
  /// 更新一条数据
  /// </summary>
  public void Update(CB_Article.Model.CB_Articles model)
  {
  StringBuilder strSql = new StringBuilder();
  strSql.Append("update CB_Article set ");
  strSql.Append("Article_Title=@Article_Title,");
  strSql.Append("BigClassName=@BigClassName,");
  strSql.Append("SmallClassName=@SmallClassName,");
  strSql.Append("AddUser=@AddUser,");
  strSql.Append("Content=@Content,");
  strSql.Append("Hits=@Hits,");
  strSql.Append("ImageNum=@ImageNum,");
  strSql.Append("FirstImgURL=@FirstImgURL,");
  strSql.Append("ImgDisplay=@ImgDisplay");
  strSql.Append("introduction=@Title_jj");
  strSql.Append("where Article_ID=@Article_ID");
  SqlParameter[] parameters = {
  new SqlParameter("@Article_ID", SqlDbType.Int,4),
  new SqlParameter("@Article_Title", SqlDbType.VarChar,50),
  new SqlParameter("@BigClassName", SqlDbType.VarChar,50),
  new SqlParameter("@SmallClassName", SqlDbType.VarChar,50),
  new SqlParameter("@AddUser", SqlDbType.VarChar,50),
  new SqlParameter("@Content", SqlDbType.Text),
  new SqlParameter("@Hits", SqlDbType.Int,4),
  new SqlParameter("@ImageNum", SqlDbType.SmallInt,2),
  new SqlParameter("@FirstImgURL", SqlDbType.VarChar,100),
  new SqlParameter("@ImgDisplay", SqlDbType.Bit,1),
  new SqlParameter("@Title_jj", SqlDbType.VarChar,100) };
  parameters[0].Value = model.Article_ID;
  parameters[1].Value = model.Article_Title;
  parameters[2].Value = model.BigClassName;
  parameters[3].Value = model.SmallClassName;
  parameters[4].Value = model.AddUser;
  parameters[5].Value = model.Content;
  parameters[6].Value = model.Hits;
  parameters[7].Value = model.ImageNum;
  parameters[8].Value = model.FirstImgURL;
  parameters[9].Value = model.ImgDisplay;
  parameters[10].Value = model.Article_Title_jj;

  DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  }

错误提示“必须声明标量变量 "@ImgDisplayintroduction"。 ”

网上查了下,应该是SQl参数的问题,断查了下,问题是在以上代码中,把以上代码段注释掉就可以运行,不过以上的代码问题出在那里呢?看了半天都找不到。。。。。。。。。

------解决方案--------------------
这么多的变量,以上代码里面也没出现:@ImgDisplayintroduction,是不是你的存储过程有问题啊。建议你ctrl+F查找下,你这个变量在哪里出现过。估计是你存储过程没写对。
------解决方案--------------------
你应该丢掉了 ImgDisplayintroduction 参数吧,sql或存储过程中需要你传入 ImgDisplayintroduction参数
------解决方案--------------------
strSql.Append("ImgDisplay=@ImgDisplay");
strSql.Append("introduction=@Title_jj"); <-------------- 这里少个 逗号 ,
strSql.Append("where Article_ID=@Article_ID");
------解决方案--------------------
StringBuilder strSql = new StringBuilder();
strSql.Append("update CB_Article set ");