winforms c/s我在datagridview 中绑定了个数据集,但是 查询出来的 序号不是 连续的,请问 怎么可以让 datagridview 中的 序号是连续的呢,谢谢
请给代码段,感激不尽

解决方案 »

  1.   

    /// <summary>
    /// 添加id列与行索引(rwoNo)列
    /// </summary>
    /// <param name="dt"></param>
    /// <returns></returns>
    static public DataTable onAddIdAndRowNoColumns(DataTable dt)
    {
    try
    {
    dt.Columns.Add("id",Type.GetType("System.Int64"));
    dt.Columns["id"].AutoIncrement=true;
    dt.Columns["id"].AutoIncrementSeed=1;
    dt.Columns["id"].AutoIncrementStep=1;
    dt.Columns.Add("rowNo",Type.GetType("System.Double"),"id");
    }
    catch(Exception exc)
    {
    Yj_CommonVar.onShowMessagebox(exc,"Yj_CommonVar","onAddIdAndRowNoColumns(DataTable dt)");
    }
    return dt;
    }
      

  2.   

    上面的函数要在建立表实例之后和填充数据之前执行,如:DataTable dt=new DataTable("table1");
    //在建立实际之后      dt=onAddIdAndRowNoColumns(dt);//在填充数据之前
    SqlDataAdapter ada=new SqlDataAdapter(commStr,Yj_CommonVar.SqlConn);
    ada.Fill(dt);
      

  3.   

    查询数据的时候加上一个编号列就是了。
    select @Index identity(1,1)
      

  4.   

    Create table #tb( my Int identity(1,1),ProNo varchar(5) )
    Insert into #tb select * from dProNo
    select * from #tb
    Drop table #tb
    我这写法有点麻烦。有个更简洁的办法!~那种写法的语法我不知道。没写出来。
      

  5.   

    select row_number() over(order by col) as orderid,* from tb
      

  6.   

    "SELECT col1, col2, ... ROW_NUMBER() OVER (ORDER BY ... ) AS POS FROM table1 WHERE ..."
    取得的POS就是一个行号,排序根据OVER中的ORDER.
    我常用它在SQL2005中做分页.