User-Role#2 C# กับการติดต่อฐานข้อมูล MySQL ด้วย MySQL connector

User-Role #2 C# การติดต่อฐานข้อมูล MySQL ด้วย MySQL connector 
Download link https://www.mysql.com/products/connector/

ขั้นตอนที่ 1 Download และติดตั้ง MySQL Connector





ขั้นตอนที่ 2 Add Reference MySql เข้ามาในโปรเจ็ค


ขั้นตอนที่ 3 การ Add Class


ขั้นตอนที่ 4 ทดสอบเพิ่มข้อมูลลงตารางข้อมูล


 ขั้นตอนที่ 5 การออกแบบหน้าจอ


ขั้นตอนที่ 6 Class ที่เกี่ยวของและ Code program

  
   
Class ConnectionString

using System;
using System.Text;
using System.Xml;
using System.Windows.Forms;
using System.Data;

namespace Prj_UserMenu
{
    class ConnectionString
    {
        public string myConnectionString = "";
        public ConnectionString()
        {
            myConnectionString = GetConnectString();
        }

        public string GetConnectString()
        {
            string strXml = "\\systemParam.xml";
            DataSet dsPath = new DataSet();
            dsPath.ReadXml(Application.StartupPath + strXml);

            string strSrv, strUsr, strPwd, strDbn = "";
            if (dsPath.Tables.Count > 0)
            {
                strSrv = dsPath.Tables[0].Rows[0]["srv"].ToString();
                strUsr = dsPath.Tables[0].Rows[0]["usr"].ToString();
                strPwd = dsPath.Tables[0].Rows[0]["pwd"].ToString();
                strDbn = dsPath.Tables[0].Rows[0]["dbn"].ToString();

                myConnectionString = "server=" + strSrv + ";uid=" + strUsr + ";pwd=" + strPwd + ";database=" + strDbn + ";";
            }


            return myConnectionString;
        }

    }
}

ไฟล์ XML สำหรับเก็บข้อมูลเพื่อนำไปสร้าง Connection String


Class Connection Database
using System;
using System.Text;
using System.Threading.Tasks;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;

namespace Prj_UserMenu
{
   class ConnectionDatabase
    {
       private MySqlConnection conn;
       private int rowcount;
       public ConnectionDatabase()
        {
            conn = GetConnection();
        }

       public MySqlConnection GetConnection()
       {
           try
           {
               ConnectionString cs = new ConnectionString();
               conn = new MySqlConnection(cs.GetConnectString());
           }
           catch (MySqlException err)
           {
               throw err;
           }
         
           if (conn.State == ConnectionState.Open)
               conn.Close();
           conn.Open();
           return conn;
       }

       public int GetRowCount(string sqlCommand)
       {
           MySqlConnection objConn = conn;
           MySqlCommand myComm = conn.CreateCommand();
           myComm.CommandText = sqlCommand;
           int i = 0;
           try
           {
               MySqlDataReader myReader = myComm.ExecuteReader();
             
               while (myReader.Read())
                 i++;
           }
           catch (MySqlException err)
           {
               throw err;
           }
           objConn.Close();
           return i;
       }

    }
}
 Code เมื่อกดปุ่ม Execute 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Prj_UserMenu
{
    public partial class FrmTestConnDB : Form
    {
        public FrmTestConnDB()
        {
            InitializeComponent();
        }

        private void btnExec_Click(object sender, EventArgs e)
        {
            Menus menus = new Menus();
            var i = menus.GetDataBySqlCommand(txtSqlCommand.Text);
            txtResult.Text = i.ToString();
           
        }
    }
}

ผลการทดสอบโปรแกรม


Comments