Kamis, 31 Oktober 2013

CRUD Database Dengan C# dan MySql

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 :D

Bonus Complete Source Code : http://adf.ly/FAjMQ
Sekian semoga bermanfaat :D

1 komentar:

  1. Crud Database Dengan C Dan Mysql ~ Songkar13 >>>>> Download Now

    >>>>> Download Full

    Crud Database Dengan C Dan Mysql ~ Songkar13 >>>>> Download LINK

    >>>>> Download Now

    Crud Database Dengan C Dan Mysql ~ Songkar13 >>>>> Download Full

    >>>>> Download LINK

    BalasHapus