Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从C#中的OleDbDataReader获取检索记录计数?_C#_Sql_Oledbdatareader - Fatal编程技术网

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

从C#中的OleDbDataReader获取检索记录计数?,c#,sql,oledbdatareader,C#,Sql,Oledbdatareader,我想从C#中的OleDbDataReader获取检索记录计数 感谢您的帮助 谢谢。您可以将查询更改为: strQuery = "SELECT count(*) as RowCount, * FROM " + Table_Name; 这将允许您检索行数,如下所示: dbReader.Read(); var rowCount = (int)dbRead["RowCount"]; 这可以做到,但可能有更好的方法: int i = 0; While (dbReader.Read()){ i++

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

感谢您的帮助


谢谢。

您可以将查询更改为:

strQuery = "SELECT count(*) as RowCount, * FROM " + Table_Name;
这将允许您检索行数,如下所示:

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

这可以做到,但可能有更好的方法:

int i = 0;
While (dbReader.Read()){
   i++;
}
有关更多详细信息:

使用
executeslar()
而不是使用
read
函数

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

这是一种有效的方法,不会修改OP的查询。如果OP实际上需要记录中的数据,那么就更好了,因为处理可以在
While
循环中完成,但是我承认,仅仅为了获得countThank而循环行不是最有效的。现在我使用sqlBulkCopy从MS Access复制到SQL DB。现在我想知道有多少行被复制了,我怎样才能做到?
SqlCommand cmd = new SqlCommand("SELECT count(*) FROM " + Table_Name, conn);
    try
    {
        conn.Open();
        int total = (Int32)cmd.ExecuteScalar();
    }