sql语句是这样的
select * from infos where zcrq=@sj
sj 时间~
zcrq是注册日期smalldatetime
页面上有5个按钮 他们的text分别是2008 2009 2010 2011 2012
我要实现的功能是这样的
点击按钮 从infos表中查找出对应年份的内容 放到gridview中在页面中显示~
有什么办法么?
新手弄了好久也没有实现~

解决方案 »

  1.   

    http://www.worlduc.com/blog.aspx?bid=3939179
    参数啊http://www.cnblogs.com/glaivelee/archive/2010/07/19/1780557.html
      

  2.   

    看看这个对不对,
    select * from infos where year(zcrq)=@sj
    配置一下GridView的数据源,查询语句用上面这句
      

  3.   


    做不同的参数进去就是了
      List<实体类> list = new List<实体类>();
      实体类 model = null;
     string sql = "select * from infos where zcrq=@sj";
                SqlConnection conn = new SqlConnection("连接字符串");
                conn.Open();
                SqlCommand com = new SqlCommand(sql, conn);
                SqlParameter[] sp = new SqlParameter[]
                {              
                    new SqlParameter("@sj",SqlDbType.你数据库中的类型)
                };
                sp[0].Value = button的ID.Text;
                com.Parameters.AddRange(sp);
                SqlDataReader reader = com.ExecuteReader();
                while(reader.Read())
                {
                       model = new 实体类(); 
                       model.属性 =  reader["字段名"];  //这里转化为相应的类型
                       ....
                       list.Add(model);
                }            //最后把list做为数据源绑定到gridview
                  
      

  4.   

    LZ按照3楼的去实现吧。规范下自己的编码习惯, sql语句你是匹配对应的年份, 应该也需要 year(zcrq) 转换。 
      

  5.   

    只判断zcrq列的年份,可用函数YEAR(date)
    select * from infos where YEAR(zcrq)=@sj
      

  6.   

    在点击按钮的时候传不同的参数进去查询绑定GridView
      

  7.   

    where convert(varchar(4),zcrq,120) = '2008'===================
    这样写就可以实现
      

  8.   

    convert(varchar(4),zcrq,120) 这个语句可以获取zcrq的前四位,即年份