Selamat pagi kawan, hari ini saya akan berbagi tutorial untuk
Create, Read, Update, Delete di Visual C# dengan MySql. Di C# sedikit
berbeda dengan Netbeans, kalau Netbeans library MySQL sudah ada tanpa
kita harus menginstall atau download librarynya, tetapi di C# kita perlu
download dan instal sendiri librarynya.
Connector untuk OS Windows 32 Bit :
http://adf.ly/FAgop
Setelah selesai download dan instal connectornya, saatnya sekarang buka Visual C# nya
Seperti biasa sebelum memulai code di Editornya, berdoa dulu ya, Bismillahirrohmanirrohim..,
1. Buat Project Baru (Visual C#, Windows Form Appication)
2. Buat Desain Form Sesuka anda, contohnya seperti ini :
3. Buat Class Modelnya, caranya : klik kanan pada project -> Add -> Class
Nama Class : Mahasiswa.cs
Berikut isinya :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace LatihanDB
{
class Mahasiswa
{
private string nim, nama, fakultas;
public string Fakultas
{
get { return fakultas; }
set { fakultas = value; }
}
public string Nama
{
get { return nama; }
set { nama = value; }
}
public string Nim
{
get { return nim; }
set { nim = value; }
}
}
}
4. Add Library yang sudah diinstal diatas,
- Klik kanana pada References
- Add References
- Pilih tab Browse
- Cari file library (biasanya di
C:\Program Files\MySQL\MySQL Connector Net 6.4.5\Assemblies\v4.0)
- Pilih
MySql.Data.dll dan
MySql.Data.Entity.dll
- OK
5.Buat Class Daonya : klik kanan pada project -> Add -> Class
nama kelasnya : MahasiswaDAO.cs
isinya sebagai berikut :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data.MySqlClient;
using System.Data;
namespace LatihanDB
{
class MahasiswaDAO
{
private MySqlCommand perintah = null;
string konfigurasi = "Server=localhost;Port=3306;UID=root;PWD=;Database=dbpv";
MySqlConnection koneksi = new MySqlConnection();
public MahasiswaDAO()
{
koneksi.ConnectionString = konfigurasi;
}
public DataSet getData()
{
DataSet ds = new DataSet();
try
{
koneksi.Open();
perintah = new MySqlCommand();
perintah.Connection = koneksi;
perintah.CommandType = CommandType.Text;
perintah.CommandText = "SELECT nim,nama,fakultas FROM tb_mhs";
MySqlDataAdapter mdap = new MySqlDataAdapter(perintah);
mdap.Fill(ds, "tb_mhs");
koneksi.Close();
}catch(MySqlException){
}
return ds;
}
public bool insertData(Mahasiswa m)
{
Boolean stat = false;
try
{
koneksi.Open();
perintah = new MySqlCommand();
perintah.Connection = koneksi;
perintah.CommandType = CommandType.Text;
perintah.CommandText = "INSERT INTO tb_mhs VALUES ('"+m.Nim+"','"+m.Nama+"','"+m.Fakultas+"')";
perintah.ExecuteNonQuery();
stat = true;
koneksi.Close();
}
catch (MySqlException) { }
return stat;
}
public bool deleteData(string nim)
{
Boolean stat = false;
try
{
koneksi.Open();
perintah = new MySqlCommand();
perintah.Connection = koneksi;
perintah.CommandType = CommandType.Text;
perintah.CommandText = "DELETE FROM tb_mhs WHERE nim='"+nim+"'";
perintah.ExecuteNonQuery();
stat = true;
koneksi.Close();
}
catch (MySqlException) { }
return stat;
}
public bool updateData(Mahasiswa m, string nim){
Boolean stat = false;
try
{
koneksi.Open();
perintah = new MySqlCommand();
perintah.Connection = koneksi;
perintah.CommandType = CommandType.Text;
perintah.CommandText = "UPDATE tb_mhs SET nim='"+m.Nim+"', nama='"+m.Nama+"',fakultas='"+m.Fakultas+"' WHERE nim='"+nim+"'";
perintah.ExecuteNonQuery();
stat = true;
koneksi.Close();
}
catch (MySqlException) { }
return stat;
}
}
}
6. Pada Form yang pertama kita buat tadi tambahkan Code sebagai berikut :
a. Buat methode seperti ini :
void lihatSemuaData()
{
DataSet data = md.getData();
dataGridView1.DataSource = data;
dataGridView1.DataMember = "tb_mhs";
}
a. Pada event Form OnLoad (klik ganda pada form):
private void Form1_Load(object sender, EventArgs e)
{
lihatSemuaData();
}
b. Pada Button Insert, Update, Delete klik ganda.
c. Berikut code pada Form1.cs
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;
namespace LatihanDB
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
MahasiswaDAO md = new MahasiswaDAO();
void lihatSemuaData()
{
DataSet data = md.getData();
dataGridView1.DataSource = data;
dataGridView1.DataMember = "tb_mhs";
}
private void Form1_Load(object sender, EventArgs e)
{
lihatSemuaData();
}
private void insertBtn_Click(object sender, EventArgs e)
{
Mahasiswa m = new Mahasiswa();
m.Nim = nimTxb.Text;
m.Nama = namaTxb.Text;
m.Fakultas = fakultasTxb.Text;
md.insertData(m);
lihatSemuaData();
}
string nim;
private void updateBtn_Click(object sender, EventArgs e)
{
Mahasiswa m = new Mahasiswa();
m.Nim = nimTxb.Text;
m.Nama = namaTxb.Text;
m.Fakultas = fakultasTxb.Text;
md.updateData(m,nim);
lihatSemuaData();
}
private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e)
{
nimTxb.Text = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
namaTxb.Text = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
fakultasTxb.Text = dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();
nim = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
}
private void deleteBtn_Click(object sender, EventArgs e)
{
md.deleteData(nim);
lihatSemuaData();
}
}
}
CATATAN :
- Code diletakkan sesuai Event
- Event bukan tulis secara manual, tetapi generate C# dengan melakukan klik ganda pada komponen
- Khusus untuk dataGridView1_CellEnter cara memeberi eventnya adalah :
a. klik kanan pada data gridview
b. pilih pada tab Events, yang icon nya gambar petir
c. Cari CellEnter dan klik ganda.
- Untuk nama variable disesuaikan ya
Bonus Complete Source Code : http://adf.ly/FAjMQ
Sekian semoga bermanfaat