如果..谢谢

解决方案 »

  1.   

    select count(*) from new
      

  2.   

    select count(*) as cc, * from new
      

  3.   

    ExecuteNonQuery()此方法返回的就是执行的条数,
      

  4.   

    如果是用DataReader读取数据,那么不知道如果是用DataAdapter.Fill方法装载到DataTable
    那么myDataTable.Rows.Count
      

  5.   

    我都说了是select * from new
    是这样的如
    Void bind(string Sql)
    {
        i=?           //在这里查出传进来的SQL语包查询出多少条记录如"select * from new"
        DG=DGBind(Sql)//在这里绑定SQL查询语句到DataGrid
    }
      

  6.   

    一般不用*,
    可以select count(1) from new--或者如果你已经读到DataTable中,可以dt.Rows.Count--如果你读的数据都是从数据库表中的,而且是MSSQL数据库
    可以直接从系统表中读取。
      

  7.   

    我说了是select * from new
    是这样的如
    Void bind(string Sql)
    {
        i=?           //在这里查出传进来的SQL语包查询出多少条记录如"select * from new"
        DG=DGBind(Sql)//在这里绑定SQL查询语句到DataGrid
    }
    也就是说写一个进程,传进来的是一条查询语句..样式如:select * from new
    然后在这个过程用最快的办法取得这条语句可以查询出多少条记录
      

  8.   

    --当数据量大的时候,而且是读全表的记录数,下面的方法是最快的
    select rowcnt
    from sysindexes
    where id = object_id('表名')
    and status = 0
      

  9.   

    那你可以对这个SQL进行更改
    string count = "select count(*) "+sql.Substring(sql.IndexOf("from"), sql.Length - sql.IndexOf("from"));
    然后去执行这个count,从数据库获取如果你需要去数据集的话,那就直接fill进个dataset。然后取Rows.Count
      

  10.   

    因为不知道传进来的查询语句到底是怎么样的也不知道查询哪一个表
    但样式就如"select * from news"这样的形式
    然后传进来的时候判断这个查询语句可以查询出多少条记录谢谢
      

  11.   

    如果是你那种的话,可以这样Void bind(string sql)
    {
         //执行这条Sql就可以得到结果
         string fullSql = string.Format("select count(1) from ({0}) a",sql); 
    }
      

  12.   

    用一个datareader读取,然后判断dr的行数。
      

  13.   

    "Select Count(1) As l_Count From new"
      

  14.   

    我也有想过做DataReader知道多少钱的时候要把数据库倒进到DataReader
    因为记录量太大
    感觉这样会很费时间有没有更简单的办法
      

  15.   

    改一下:
    string fullSql = string.Format("select RowCnt = count(1) from ({0}) a",sql);