public DataTable fenye(int yd)
        {
            return Class1.ExecuteDataSet("select top 10 * from leave where id not in(select top 10*(" + yd+ "-1) from leave order by id ) ").Tables[0];
        }
protected void Button3_Click(object sender, EventArgs e)
    {
        Repeater1.DataSource = dsds.fenye(1);
        Repeater1.DataBind();    }
为什么我调试的时候会显示'(' 附近有语法错误  我根本就没用过单引号 怎么会单引号有错误 纳闷

解决方案 »

  1.   

      return Class1.ExecuteDataSet("select top 10 * from leave where id not in(select top 10*(" + yd+ "-1) from leave order by id ) ").Tables[0];
    ===============
    int i= 10*yd;
     return Class1.ExecuteDataSet("select top 10 * from leave where id not in(select top "+ yd+ " * from leave order by id ) ").Tables[0];
      

  2.   

    int i= 10*yd;
     return Class1.ExecuteDataSet("select top 10 * from leave where id not in(select top "+ i+ " * from leave order by id ) ").Tables[0];  //更正
      

  3.   

    估计是这句SQL语句的问题,楼主仔细查看下,呵呵,我要去吃饭了。回来再看。。
    select top 10*(" + yd+ "-1) from leave order by id 
      

  4.   

    Class1.ExecuteDataSet("select top 10 * from leave where id not in(select top (10 * "+ yd-1+") from leave order by id ) ").Tables[0];
      

  5.   

    @sqlstr=@sqlstr+'set @sqlstr=''select top '+cast(@Pagesize as varchar)+' '+@fieldlist+' from (select top 100  
    percent * from  (select top  ''+cast(@rnum as varchar)+'' * from '+@tablename+' where '+@strwhere+'  
    order by '+@orderfield+' asc) as b order by '+@orderfield+' desc) as a order by '+@orderfield+' desc '';'