簡體   English   中英

如何從SqlDataReader讀取SQL Server COUNT

[英]How to read SQL Server COUNT from SqlDataReader

我正在嘗試使用C# SqlDataReader查找表的計數,但我一直在尋找

沒有數據時無效嘗試讀取

我的代碼:

string sql = "SELECT COUNT(*) FROM [DB].[dbo].[myTable]";

SqlCommand cmd = new SqlComman(sql, connectionString);
SqlDataReader mySqlDataReader = cmd.ExecuteReader();

int count = mySqlDataReader.GetInt32(0); // Here is where I get the error.

我知道我有一個與數據庫的有效連接,因為我可以在很多地方讀取和寫入, COUNT(*)的特殊之處是我無法正確讀取它? 如何填充int count

你必須閱讀它:

if (mySqlDataReader.Read()) {
  count = mySqlDataReader.GetInt32(0);
}

或者,您可以使用ExecuteScalar

int count = (int)cmd.ExecuteScalar();

其定義為:

執行查詢,並返回查詢返回的結果集中第一行的第一列。 其他列或行將被忽略。

ExecuteScalar是您所需要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM