(Tutorial 3) Interaksi Aplikasi dengan Database pada Visual Studio

Interaksi aplikasi dengan database itu bagaimana? coba kita simak penjelasannya. Menyimpan data, memperbaikinya, atau menghapus data dalam sebuah aplikasi baik berbasis dekstop, mobile, maupun website adalah hal yang tergolong penting. Pada dasarnya semua yang dilakukan pada data ini biasanya diharapkan akan membuat data pada bank data menjadi valid. Setiap aplikasi tentunya memiliki bank data yaitu database yang menyimpan inti dari transaksi yang dilakukan pada aplikasi.

Pada artikel ini kita akan melakukan interaksi aplikasi dengan data seperti menyimpan data, memperbaiki, menghapus data atau bahkan mencari data yang tersimpan. Pada tutorial 1 dan tutorial 2 kita sudah membahas banyak hal mulai dari membangun aplikasi dan kemudian membuat aplikasi yang dibangun terkoneksi dengan database tempat penyimpanan data-data.

Sekarang kita akan melanjutkannya, oleh karena itu interaksi ini akan dapat kita lakukan hanya jika aplikasi yang dibangun sudah sesuai dengan database dan terkoneksi. Jika para pembaca sudah melakukan kedua hal tersebut, maka kita dapat melakukan interaksi tersebut.

Interaksi Aplikasi dengan Database (Menyimpan Data)

Tombol simpan data merupakan hal yang biasa ada pada aplikasi. Tombol ini berfungsi untuk menyimpan data dari form aplikasi ke dalam sebuah tabel atau query dalam database. Contohnya pada form supplayer berikut, kita akan menyimpan data-data suplayer yang kita input ke dalam tabel suplier.

Sebelumnya, pada tabel suplier kita lihat ada tiga buah record data sebagai berikut :

Kemudian kita ingin saat memasukkan data pada form aplikasi seperti kode supplier, nama, alamat dan lain sebagainya, dan saat kita klik tombol simpan maka data-data tersebut akan tersimpan ke dalam database dan data di dalam database kini bertambah.

Untuk mengaktifkan tombol simpan, Double klik button simpan, kemudian ketikkan coding berikut :

Private Sub BTNTAMBAH_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNTAMBAH.Click
        Using Cmd As New OleDbCommand("Insert Into supplier Values('" & TXTKDSUPPLIER.Text & "', '" & TXTNAMASUPPLIER.Text & "','" & TXTALAMAT.Text & "','" & TXTTELEPON.Text & "','" & TXTEMAIL.Text & "','" & TXTNPWP.Text & "',  '" & TXTCONTACTPERSON.Text & "')", Koneksi.open)
            Cmd.CommandType = CommandType.Text
            Cmd.ExecuteNonQuery()
            MsgBox("Selamat!, Data berhasil disimpan")
            TampilData()
        End Using
    End Sub

Hasil program di atas terlihat bahwa setelah data masuk ke dalam listview, maka isi database juga bertambah sesuai data yang barusaja ditambahkan, namun disini ada sedikit kejanggalan. Jika diperhatikan maka terlihat textbox tidak kosong setelah data ditambahkan, maka untuk membuat textbox menjadi bersih, kita perlu menambahkan sebuah sub yang berisi pembersihan setiap textbox, kemudian sub bersih kita panggil diahir coding yang tadi sudah kita buat. Seperti ini :

Sub bersih()
        TXTKDSUPPLIER.Clear()
        TXTNAMASUPPLIER.Clear()
        TXTALAMAT.Clear()
        TXTTELEPON.Clear()
        TXTEMAIL.Clear()
        TXTNPWP.Clear()
        TXTCONTACTPERSON.Clear()
    End Sub

    Private Sub BTNTAMBAH_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNTAMBAH.Click
        Using Cmd As New OleDbCommand("Insert Into supplier Values('" & TXTKDSUPPLIER.Text & "', '" & TXTNAMASUPPLIER.Text & "','" & TXTALAMAT.Text & "','" & TXTTELEPON.Text & "','" & TXTEMAIL.Text & "','" & TXTNPWP.Text & "',  '" & TXTCONTACTPERSON.Text & "')", Koneksi.open)
            Cmd.CommandType = CommandType.Text
            Cmd.ExecuteNonQuery()
            MsgBox("Selamat!, Data berhasil disimpan")
            TampilData()
            bersih()
        End Using
    End Sub

Interaksi Aplikasi dengan Database (Memperbaiki Data)

Memperbaiki data di dalam database dapat kita lakukan melalui form aplikasi. Untuk memperbaiki data melalui aplikasi kita dapat mengakses data tersebut melalui listview dengan cara double click pada data yang ingin diperbaiki. Untuk itu, sebelum masuk ke coding perbaiki, kita perlu akses double click di listview sebagai berikut :

pertama, double click listview :

Jangan masukkan code disini tetapi gantilah menjadi double click seperti berikut :

Kemudian masukkan code berikut :

    Private Sub LVDATASUPPLIER_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles LVDATASUPPLIER.DoubleClick
        TXTKDSUPPLIER.Text = LVDATASUPPLIER.SelectedItems(0).Text
        TXTNAMASUPPLIER.Text = LVDATASUPPLIER.SelectedItems(0).SubItems(1).Text.ToString
        TXTALAMAT.Text = LVDATASUPPLIER.SelectedItems(0).SubItems(2).Text.ToString
        TXTTELEPON.Text = LVDATASUPPLIER.SelectedItems(0).SubItems(3).Text.ToString
        TXTEMAIL.Text = LVDATASUPPLIER.SelectedItems(0).SubItems(3).Text.ToString
        TXTNPWP.Text = LVDATASUPPLIER.SelectedItems(0).SubItems(3).Text.ToString
        TXTCONTACTPERSON.Text = LVDATASUPPLIER.SelectedItems(0).SubItems(3).Text.ToString
    End Sub

Data pada code di atas disesuaikan dengan data yang ada pada listview dengan melihat di tanda segitiga ujung listview, kemudian klik edit coloumns, terlihat bahwa displayindex KODE SUPLAYER adalah 0 ;

Nah, dengan code ini maka listview sudah bisa di double click untuk memperbaiki data seperti berikut, double click 002 maka data sujarwo masuk ke dalam textbox untuk bisa diedit:

Kemudian, untuk mengaktifkan tombol perbaiki, double click pada button PERBAIKI dan masukkan code berikut :

Private Sub BTNUBAH_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNUBAH.Click
        Using cmd As New OleDbCommand("update supplier set nama_supplier='" & TXTNAMASUPPLIER.Text & "',alamat='" & TXTALAMAT.Text & "',telepon = '" & TXTTELEPON.Text & "',email= '" & TXTEMAIL.Text & "',npwp= '" & TXTNPWP.Text & "',contact_person= '" & TXTCONTACTPERSON.Text & "' where KODE_supplier = '" & TXTKDSUPPLIER.Text & "'", Koneksi.open)
            cmd.CommandType = CommandType.Text
            cmd.ExecuteNonQuery()
            MsgBox("Data telah diubah", MsgBoxStyle.Information)
            Call TampilData()
            Call bersih()
        End Using
    End Sub

Maka kita dapat mengubah data yang kita inginkan seperti ini misalnya Sujarwo pindah alamat ke binjai :

Setelak klik Ok maka hasilnya sebagai berikut :

Otomatis data pada database juga akan berubah :

Interaksi Aplikasi dengan Database (Menghapus Data)

Menghapus data juga tidak kalah pentingnya dalam penggunaan aplikasi. Misalnya saja seorang suplayer telah berhenti menjadi suplayer di perusahaan ini, maka alangkah baiknya jika datanya dihapus dari daftar suplayer.

Untuk membuat hapus data, maka double click pada button HAPUS dan masukkan code berikut :

Private Sub BTNHAPUS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNHAPUS.Click
        Using cmd As New OleDbCommand("Delete from supplier where KODE_supplier = '" & TXTKDSUPPLIER.Text & "'", Koneksi.open)
            cmd.CommandType = CommandType.Text
            cmd.ExecuteNonQuery()
            MsgBox("Data Telah Dihapus!", MsgBoxStyle.Critical)
            Call TampilData()
            Call bersih()
        End Using
    End Sub

Maka hasilnya akan seperti ini, Double click 004, kemudian klik tombol HAPUS

Data akan terhapus dari listview dan dari database :

Interaksi Aplikasi dengan Database (Mencari Data)

Fasilitas Cari data ini sangat penting apalagi jika data yang ada sangat banyak. Biasanya user membutuhkan tombol cari untuk mempermudah dan mempersingkat waktu dalam penggunaan aplikasi. Untuk membuat fasilitas cari maka kita pada studi ini akan menginputkan NAMA SUPLAYER sebagai kategori pencarian seperti yang sudah kita buat pada desain form aplikasi.

Double click tombol CARI dan ketikkan code berikut :

Private Sub BTNCARI_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCARI.Click
        strSQL = "SELECT * FROM supplier where nama_supplier like '%" & TXTCARI.Text & "%'"
        objCommand = New OleDbCommand(strSQL, Koneksi.open)
        Using Data As OleDbDataReader = objCommand.ExecuteReader
            Dim c As Integer
            LVDATASUPPLIER.Items.Clear()
            While Data.Read
                LVDATASUPPLIER.Items.Add(Data("KODE_supplier"))
                LVDATASUPPLIER.Items(c).SubItems.Add(Data("nama_supplier"))
                LVDATASUPPLIER.Items(c).SubItems.Add(Data("alamat"))
                LVDATASUPPLIER.Items(c).SubItems.Add(Data("telepon"))
                LVDATASUPPLIER.Items(c).SubItems.Add(Data("email"))
                LVDATASUPPLIER.Items(c).SubItems.Add(Data("npwp"))
                LVDATASUPPLIER.Items(c).SubItems.Add(Data("contact_person"))
                c = c + 1
            End While
        End Using
    End Sub

Untuk melihat hasilnya, ketikkan nama suplayer misal Sujarwo pada textbox di sebelah tombol CARI, kemudian klik tombol CARI :

Maka muncullah data Sujarwo seperti yang kita butuhkan. Sampai disini dulu pembahasan kita ya, kalian bisa aplikasikan code-code yang ada pada seluruh form yang sudah kita rancang sebelumnya.

Leave a Reply

Your email address will not be published. Required fields are marked *