专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VC

声明标量变量 "@email"出现的有关问题。求解。

发布时间:2011-06-23 14:27:13 文章来源:www.iduyao.cn 采编人员:星星草
声明标量变量 "@email",,出现的问题。。。。求解。。
string sql = @"select * from Publish where Email=@email order by PublicTime desc";
  SqlParameter[] param = new SqlParameter[]
  {
  new SqlParameter("@email", SqlDbType.NVarChar, 50),
  };
  param[0].Value = Session["strnickemail"];


为什么运行的时候它老是提示必须声明标量变量 "@email"??
缓存里面的Session["strnickemail"]="123@1.com"

在跟数据库连接的时候: 
SqlCommand comm = new SqlCommand(sql, conn);
  comm.Parameters.AddRange(param);
  conn.Open();
为什么会出现这个问题吖。。。。求解吖。。。。求解吖。。

------解决方案--------------------
没有把command赋给Adpater
------解决方案--------------------
C# code

protected void GetListByUserName()
{
    string sql = "select * from Publish where Email=@email order by PublicTime desc";
    SqlParameter[] param = new SqlParameter[]
    {
        new SqlParameter("@email", SqlDbType.NVarChar, 50)
    };
    param[0].Value = Session["strnickemail"];
    try
   {
      using (SqlConnection conn = new SqlConnection(Common.ConnString))
      { 
            SqlCommand comm = new SqlCommand(sql, conn);
            comm.Parameters.AddRange(param);
            conn.Open();
            SqlDataAdapter dr = new SqlDataAdapter();
            dr.SelectCommand=comm; //更正一下,这里是你SqlCommand的对象
            DataSet ds = new DataSet();
            dr.Fill(ds);
            DataList1.DataSource = ds;
            DataList1.DataBind();
        }
    }
    catch (Exception ex)
    {
       //throw ex;
        lblError.Text = "显示失败,请稍候再重试" + ex.Message;
        lblError.Visible = true;
     }
  }
}
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: