1. ฐานข้อมูล MySql พร้อมข้อมูล ในที่นี้จะใช้ฐานข้อมูลชื่อ test ภายในฐานข้อมูลมีตาราง 1 ตารางชื่อ table1 ข้อมูลมีดังนี้
==== table1 ====
id name
================
1 abc
2 def
================
2. ติดตั้ง MySql Connector สำหรับ .net
1. สร้าง Project ใหม่ใน Visual Studio
2. เพิ่ม Refence ของ MySql โดยเลือก Project -> Add Reference -> MySQL.Data ดังรูป
3. เพิ่ม using MySql ในหัวของ Form1 ดังนี้
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;
public partial class Form1 : Form
{
private MySqlConnection conn;
private MySqlDataAdapter adp;
public
Form1()
{
InitializeComponent();
}
private void Form1_Load(object
sender, EventArgs e)
{
conn = new
MySqlConnection("database=test;server=localhost;uid=root;pwd=password");
adp = new MySqlDataAdapter();
adp.SelectCommand = new MySqlCommand("SELECT * FROM
table1", conn);
MySqlCommandBuilder cb = new
MySqlCommandBuilder(adp);
conn.Open();
adp.Fill(dataSet1,
"table1");// ในกรณีที่ไม่ได้สร้าง table ภายใน dataSet1 ตามข้อ 4 ให้เพิ่ม Code นี้ลงไป
DataColumn dc1 = new DataColumn("id", System.Type.GetType("System.Int32"));
DataColumn dc2 = new DataColumn("Name", System.Type.GetType("System.String"));
DataTable tb = new DataTable("NameList");
dataSet1.Tables.Add(tb);
bindingSource1.DataSource = dataSet1;
bindingSource1.DataMember = "table1";
dataGridView1.AutoGenerateColumns = true;}
private void Form1_FormClosed(object sender, FormClosedEventArgs
e)
{
conn.Close();
}
private void dataGridView1_CellEndEdit(object sender,
DataGridViewCellEventArgs e)
{
adp.Update(dataSet1.Tables["table1"]);
}
private void
dataGridView1_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e)
{
adp.Update(dataSet1.Tables["table1"]);
}
}
เพิ่มเติม ในกรณีที่ต้องการเชื่อมต่อกับ control อื่นๆ เช่น textbox, combobox ให้ใช้ code ดังต่อไปนี้ในส่วนที่จะเชื่อมต่อกับฐานข้อมูล
ในกรณี textbox
textBox1.DataBindings.Add(new Binding("Text", bindingSource1, "id", true));
ในกรณี combobox
comboBox1.DataSource = dataSet1;
comboBox1.DisplayMember = "table1.Name";
comboBox1.DataBindings.Add(new Binding("Text", bindingSource1, "Name"));