1. 程式人生 > >mysql+C#實戰三:資料庫查詢操作;

mysql+C#實戰三:資料庫查詢操作;

下面程式功能:查詢資料表中的資料數目;並且使用ExecuteScalar()來獲取;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;
namespace ConsoleApplication1
{
    
    class Program
    {
        
        static void Main(string[] args)
        {
            string connStr = "server=localhost;user=root;database=student;port=3306;password=1234;";
            MySqlConnection conn = new MySqlConnection(connStr);

            try
            {
                Console.WriteLine("Connecting to MySQL...");
                conn.Open();

                //查詢資料表中的記錄數量;
                string sql = "select count(*) from postgraduate";
                MySqlCommand cmd = new MySqlCommand(sql, conn);
                //執行查詢,並返回查詢所返回的結果集中第一行的第一列。所有其他的列和行將被忽略。
                object result = cmd.ExecuteScalar();

                /*
                 * ExecuteScalar這個方法是從資料庫中檢索單個值返回值是object型別,
                 * 必須用與它在資料庫裡存放的型別相同型別或者可以轉換成的型別,
                 * 比如資料是nchar型別值為 "123" 就可以用(int)ExecuteScalar(),
                 * 如果資料是nchar型別值為 "abc"就不能用(int)ExecuteScalar(),
                 * 就得寫string result = ExecuteScalar().ToString
                 */

                if(result !=null )
                {
                    int r = Convert.ToInt32(result);
                    Console.WriteLine("當前資料表當中存在的記錄條數為: " + r);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }

            conn.Close();

            Console.WriteLine("Done.");
            Console.ReadKey();
        }
    }
}