6

我想从C#OleDbDataReader中获取检索的记录数?

strQuery = "SELECT * FROM Table_Name" ;                   
    dbCommand = new OleDbCommand(strQuery, dbConnection);
    dbReader = dbCommand.ExecuteReader();
    //Now how to get RowCount from the Table after this.

任何帮助表示赞赏。

谢谢。

4

3 回答 3

9

有关更多详细信息:通过“ExecuteScalar”获取行数

利用ExecuteSclar()而不是追求read功能。

SqlCommand cmd = new SqlCommand("SELECT count(*) FROM " + Table_Name, conn);
    try
    {
        conn.Open();
        int total = (Int32)cmd.ExecuteScalar();
    }
于 2011-05-09T05:55:22.230 回答
2

您可以将查询更改为:

strQuery = "SELECT count(*) as RowCount, * FROM " + Table_Name;

这将允许您检索行数,例如:

dbReader.Read();
var rowCount = (int)dbRead["RowCount"];
于 2011-05-09T05:53:03.753 回答
0

这会做到这一点,但可能有更好的方法:

int i = 0;
While (dbReader.Read()){
   i++;
}
于 2011-05-09T05:54:56.997 回答