Tutorial Crud Pada Bahasa Pemograman C# Menggunakan Database Sql Server
Apa sih CRUD itu?Definisi,Cara Kerja,dan contoh Implementasinya.
Definisi CRUD
CRUD adalah singkatan dari Create,Read,Update,Delete.CRUD merupakan hal dasar bagi aplikasi yang terhubung ke Database. Tanpa sebuah sistem yang memiliki CRUD, maka proses pengelolaan database tidak dapat dilakukan. Beberapa contoh aplikasi databse yang bisa kalian pakai adalah Oracle Database, Microsoft SQL Server,MySQL dan sebagainya.
Software Pendukung
Nah kali ini kita akan belajar CRUD menggunakan Microsoft Visual Studio 2022 dan Microsoft SQL Server 2021
Konfigurasi Database
Lakukan koneksi seperti gambar berikut
Dan buat database baru seperti ini
Nama database yang kita buat adalah “belajardb”.
Langkah selanjutnya adalah klik New Query
Setelah itu akan muncul form query seperti berikut
Sebenarnya ada dua cara untuk membuat Table di SQL Server,pertama menggunakan Query dan yang kedua menggunakan Table struktur.Tapi kali ini kita lebih memilih menggunakan Query agar kita lebih paham dan lebih mengenal mengenai Query yang ada di SQL Server.
Setelah itu ketik Query seperti gambar berikut
Setelah kita membuat table siswa kita akan membuat table kelas,seperti gambar dibawah ini
Setelah membuat table kelas,clik kanan pada table kelas lalu pilih edit top 200 rows setelah itu isi seperti gambar dibawah
Setelah itu kita akan membuat relasi diagram
Caranya seperti berikut
Kemudian Pilih table kelas dan siswa yang telah kita buat tadi,lalu click kanan pada table siswa pilih Relationship
Setelah itu lakukan seperti berikut dan klik OK.
Setelah membuat relasi kita akan lanjut membuat View. View sendiri adalah tabel virtual atau query yang tersimpan didalam SQL Server. View memang tidak menyimpan data sendiri pada tabel.View berfungsi untuk membuat tampilan tersebut dengan bentuk tabel virtual saja. Sekarang kita akan membuat view
Lihat gambar dibawah ini
Setelah itu pilih table siswa dan kelas yang telah kita buat tadi,kemudian Insert NIS,Nama,Tanggal Lahir dari table siswa dan Insert Kelas dari table Kelas.Kemudian click execute
liat gambar berikut
Langkah selanjutnya adalah save view tadi dan beri nama vw_siswa
Kita telah selesai menyelesaikan tahap database.Setelah kalian menyelesaikan semua tahap diatas kita akan lanjut ke tahap selanjutnya yaitu membuat program aplikasi.
Membuat Program
Setelah kita selesai membuat semua table diatas kita akan lanjut ke tahap membuat program (Coding)
Langkah pertama, buka aplikasi Visual Studio dan click FILE –>New–>Project. Lalu pilih C# -> Windows Form Application (Pastikan yang .NET)
Perhatikan gambar berikut.
Selanjutnya beri Nama Form tersebut menjadi DataSiswa
Setelah itu membuat koneksi ke database SQL Server yang sudah kita buat di awal. Caranya adalah klik Project –> DataSiswa Properties àSettings
Setelah itu pilih Settings dan ketiklah ini “Data source=POSEIDON;initial catalog=belajardb;integrated security=true;”di kolom value
“POSEIDON” ganti ke nama koneksi database kalian
“belajardb”ganti ke nama database kalian
Lalu kita akan mencoba mengetes koneksi kita apakah berhasil terhubung/tidak.Caranya adalah click kolom value lalu click tombol titik 3 disebelah kanan (lihat lingkaran merah nomor 1) setelah itu coba kita tes.Jika berhasil akan menunjukan notif seperti ini jika tidak coba cek kembali value yang tadi kalian ketik.
Tambahkan Properti
1.Tambahkan library SQL
using System.Data.SqlClient;
//2. Tambahkan Variabel untuk Perintah SQL
private SqlCommand cmd;
private DataSet ds;
private SqlDataAdapter da;
private SqlDataReader rd;
- Tambahkan String untuk konfigurasi koneksi dan sqlcommand
SqlConnection con = new SqlConnection(DataSiswa.Properties.Settings.Default.koneksi.ToString());
System.Data.SqlClient adalah extensions untuk SQL Server kita.
Public string idterpilih adalah string global yang berfungsi untuk menyimpan id yang terpilih saat datagridview di click untuk dilakukannya pengubahan data maupun penghapusan data.
SqlConnection con, merupakan koneksi string yang kita buat konfigurasinya dari properties setting yang gunanya untuk konfigurasi ke database dan sql command
Public SqlCommand cmd adalah deklarasi sqlcommand secara global agar kita tidak mengulang mendeklrasikannya di codingan yang kita butuhkan.
Mulai Mendesign Aplikasi
Design aplikasi seperti tampak pada gambar (Sesuai kreasi kalian)
No | Tools | Name | Caption(Text) |
1. | Label | Label1 | Cari Data |
2. | Label | Label2 | NIS |
3. | Label | Label3 | Nama |
4. | Label | Label4 | Kelas |
5. | Label | Label5 | Tanggal Lahir |
6. | Button | Button1 | Tambah |
7. | Button | Button2 | Edit |
8. | Button | Button3 | Hapus |
9. | Button | Button4 | Cancel |
10. | textBox | txtNIS | |
11. | textBox | textNama | |
12. | textBox | txtKelas | |
13. | combobox | cmbkelas | |
14. | Datetimepicker1 | dateTimePicker1 | |
15. | dataGridView | dataGridView1 |
Menulis Source Code
Setelah mengkonfigurasi dan mendesign aplikasi, kita sekarang berada ditahap mengetik program. Source code akan kita kelompokan menggunakan function, agar lebih efisien dan rapih.
Buatlah void loadgrid(),loadkelas()refresh()l.Setelah itu buatlah bool val().Kalian bisa mengetiknya dimana saja, tapi sebaiknya ketik dibagian atas setelah private void form1_load.
Setelah membuat void kembali ke design lalu tekan tombol Cetak,Tambah,Edit,Hapus,Cetak Semua
Perhatikan Gambar berikut
void loadgrid()
loadgrid adalah void yang digunakan untuk menampilkan data di datagridview.
void loadgrid()
{
con.Open();
cmd = new SqlCommand(“SELECT * FROM vw_siswa”, con);
ds = new DataSet();
da = new SqlDataAdapter(cmd);
da.Fill(ds, “vw_siswa”);
dataGridView1.DataSource = ds;
dataGridView1.DataMember = “vw_siswa”;
dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
dataGridView1.AllowUserToAddRows = false;
con.Close();
}
Void loadkelas()
Fungsi loadkelas() adalah untuk menampilkan table Kelas di database yang telah kita buat tadi.
void loadkelas()
{
try
{
con.Open();
cmd = new SqlCommand(“select * from Kelas”, con);
DataTable dt = new DataTable();
da = new SqlDataAdapter(cmd);
da.Fill(dt);
cmbkelas.DataSource = dt;
cmbkelas.DisplayMember = “Kelas”;
cmbkelas.ValueMember = “ID”;
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
finally
{
con.Close();
}
}
Void refresh()
void refresh()
{
con.Close();
txtnama.Clear();
txtnis.Clear();
dateTimePicker1.Value = DateTime.Now;
}
Bool val()
Ini digunakan untuk validasi.
bool val()
{
if (txtnama.TextLength < 1 || txtnis.TextLength < 1 || dateTimePicker1.Value == null || cmbkelas.Text.Length < 1)
{
MessageBox.Show(“Semua kolo harus diisi”, “Error”, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
cmd = new SqlCommand(“Select * from siswa where Nama = ‘” + txtnama.Text + “‘”, con);
con.Open();
rd = cmd.ExecuteReader();
if (rd.HasRows)
{
con.Close();
MessageBox.Show(“Nama telah dipakai!!”, “Error”, MessageBoxButtons.OK, MessageBoxIcon.Error);
return false;
}
con.Close();
return true;
}
Tambah();
if (val())
{
con.Open();
cmd = new SqlCommand(“Insert into siswa(NIS,Nama,Kelasid,TanggalLahir) values (‘” + txtnis.Text + “‘,’” + txtnama.Text + “‘,’” + cmbkelas.SelectedValue + “‘,’” + Convert.ToDateTime(dateTimePicker1.Value) + “‘)”, con);
cmd.ExecuteNonQuery();
MessageBox.Show(“Anda berhasil menambahkan data baru”, “Informasi”, MessageBoxButtons.OK, MessageBoxIcon.Information);
con.Close();
refresh();
loadgrid();
}
Ubah();
if (dataGridView1.CurrentRow.Selected == true)
{
con.Open();
cmd = new SqlCommand(“Update siswa set NIS =’” + txtnis.Text + “‘,Nama=’” + txtnama.Text + “‘,Kelasid =’” + cmbkelas.SelectedValue + “‘,TanggalLahir = ‘” + Convert.ToDateTime(dateTimePicker1.Value) + “‘ where id = ‘” + idterpilih + “‘”, con);
cmd.ExecuteNonQuery();
MessageBox.Show(“Anda berhasil mengedit data baru”, “Informasi”, MessageBoxButtons.OK, MessageBoxIcon.Information);
con.Close();
refresh();
loadgrid();
}else
{
MessageBox.Show(“Tolong pilih nama terlebih dahulu”, “Eror”, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
Hapus();
con.Open();
cmd = new SqlCommand(“DELETE FROM siswa where id =’”+idterpilih+”‘”,con);
cmd.ExecuteNonQuery();
MessageBox.Show(“Anda berhasil menghapus data baru”, “Informasi”, MessageBoxButtons.OK, MessageBoxIcon.Information);
con.Close();
refresh();
loadgrid();
Cari();
Setelah itu, kembali ke design, lalu klik kanan pada datagridview1 (datagridview) dan pilih Properties pilih tab event dan klik 2 kali pada Cell Click
Maka kita akan otomatis diarahkan ke private void datagridview1_CellClick. Ketikan source code seperti dibawah ini :
dataGridView1.CurrentRow.Selected = true;
int row = dataGridView1.CurrentCell.RowIndex;
idterpilih = dataGridView1.Rows[row].Cells[0].Value.ToString();
txtnis.Text = dataGridView1.Rows[row].Cells[1].Value.ToString();
txtnama.Text = dataGridView1.Rows[row].Cells[2].Value.ToString();
Terakhir tambahkan function loadgrid() dan loadkelas();
Sejauh ini, kita telah berhasil membuat aplikasi sederhana menggunakan Bahasa Pemrograman C# dengan fungsi menampilkan data, mencari data, ,menambah,mengubah, dan menghapus. Silahkan kalian tes aplikasi dan coba setiap fungsi yang telah kita buat tadi.Jika terjadi eror silakan cek kembali Codingan anda