CRUD
Database Dengan C# dan MySql
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.
Jangan lupa buka visual studionya yaa😊
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";
}
|
b. Pada event Form OnLoad (klik ganda pada
form):
private
void Form1_Load(object sender, EventArgs e)
{
lihatSemuaData();
}
|
c. Pada Button Insert, Update, Delete klik
ganda.
d. 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