簡體   English   中英

在C#中從MySQL數據庫獲取行數

[英]Getting count of rows from MySQL database in C#

我想計算MySql數據庫中的行數,並在標簽中返回結果。

這是我的代碼:

string connection = "SERVER= ###; PORT=###; DATABASE=###; UID=###; PASSWORD=###; CharSet=utf8;";

MySqlConnection mySqlCon = new MySqlConnection(connection);
MySqlCommand mySqlCmd = mySqlCon.CreateCommand();


mySqlCmd.CommandText = "Select count(*) as myCount from ###.###";
mySqlCon.Open();

int returnValue = (int) mySqlCmd.ExecuteScalar();

lblCLientNumber.Text = returnValue.ToString();

我得到的錯誤是: Specified cast is not valid.

但是,當我在phpMyAdmin中運行SQL命令時,結果是准確的。

我不確定我在哪里犯錯。

因為ExecuteScalar函數返回一個對象,所以出現此錯誤。

您可以執行以下操作:

int returnValue = int.Parse(mySqlCmd.ExecuteScalar().toString());

嘗試

int returnValue = Convert.ToInt32(mySqlCmd.ExecuteScalar());

但是,我希望參考該領域。 例如類似

using(MySqlCommand cmd = new MySqlCommand("Select count(*) as myCount from 
###.###", connection))
{
    using(MySqlDataReader rdr = cmd.ExecuteReader())
    {
        if(rdr.Read()) 
        {
            returnValue = Convert.ToInt32(rdr["myCount"]);
        }
    }
    rdr.Close();
}

嘗試使用

returnValue = int.Parse(mySqlCmd.ExecuteScalar().ToString());

C#要求一個整數;

在這里看看如何使用C#獲取MySQL記錄計數之前曾有人問過這個問題

暫無
暫無

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

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