从 C# 中的 OleDbDataReader 获取检索的记录计数

本文关键字:记录 检索 获取 中的 OleDbDataReader | 更新日期: 2023-09-27 17:55:45

我想从 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.

任何帮助,不胜感激。

谢谢。

从 C# 中的 OleDbDataReader 获取检索的记录计数

有关更多详细信息:通过"执行标量"获取行计数

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

SqlCommand cmd = new SqlCommand("SELECT count(*) FROM " + Table_Name, conn);
    try
    {
        conn.Open();
        int total = (Int32)cmd.ExecuteScalar();
    }

您可以将查询更改为:

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

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

dbReader.Read();
var rowCount = (int)dbRead["RowCount"];

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

int i = 0;
While (dbReader.Read()){
   i++;
}