Cara Membuat CRUD dengan vb 6.0, mysql serta adodb connection

Anonymous 7/18/2016 1 Comment
Pada tutorial kali ini saya akan menjelaskan mengenai cara membuat crud sederhana dengan vb 6.0, mysql serta adodb connection, sebelumnya saya sarankan teman-teman untuk mengikuti langkah-langkah bagaimana cara membuat koneksi vb 6.0 dan MySQL menggunakan adodb connection pada tutorial saya yang sebelumnya. Jika teman-teman sudah memahami tutorial tersebut, mari kita membuat crud dengan vb 6.0 dan mysql.
Disini saya menggunakan database serta tabel yang sama dengan tutorial saya sebelumnya tentang cara membuat form login dengan visual basic 6.0, mysql dan adodb connection agar lebih mudah dipahami. Langsung saja teman-teman silakkan buat form seperti pada gambar berikut ini:
Keterangan gambar : text box id user ganti name menjadi txtiduser, text box nama user ganti name menjadi txtnamauser, text box username ganti name menjadi txtusername, text box password ganti name menjadi txtpassword, dan combo box level akses ubah name menjadi cmbhakakses, kemudian command button input ubah name menjadi cmd input, command button edit ubah name menjadi cmdedit, command button delete ubah name menjadi cmddelete, command button exit ubah name menjadi cmdexit, jangan lupa tambahkan datagrid untuk menampilkan isi tabel user agar bisa di edit sesuai kebutuhan. Jika datagrid belum muncul pada komponen di sebelah kiri, teman-teman bisa menambahkannya melalui menu project > components > cari komponen Microsoft Datagrid Control 6.0 (OLEDB) kemudian centang, dan klik tombol apply, dan klik ok.

cara membuat crud sederhana dengan vb 6.0, mysql serta adodb connection

Jika teman-teman sudah membuat form seperti gambar diatas, mari kita masuk ke bagian coding, pertama untuk bagian form load, isi dengan :

Dim datauser As ADODB.Recordset
Private Sub Form_Load()
Set datauser = New ADODB.Recordset
datauser.Open "select * from user", conn
 Set DataGrid1.DataSource = datauser
cmbhakakses.AddItem "Admin"
cmbhakakses.AddItem "Super Admin"
cmdedit.Enabled = False
cmdbatal.Enabled = False
End Sub

Keterangan: datauser.Open "select * from user", conn memberikan nilai pada variabel data user dengan meload data pada tabel user di database, conn merupakan koneksi public yang kita buat pada koneksi module 1 sebelumnya,
Set DataGrid1.DataSource = datauser, menampilkan nilai variable datauser pada datagrid1. cmbhakakses.AddItem "Admin" dan cmbhakakses.AddItem "Super Admin" menambahkan value pada combobox hak akses pada saat form di load. Coba jalankan program, jika datagrid terisi sesuai dengan isi pada tabel user di database teman-teman, berati kalian sudah sukses pada tahap pertama ini.

Selanjutnya, klik 2 kali pada command button INPUT (cmdinput) dan isikan kode berikut:
Private Sub cmdinput_Click()
If cmdinput.Caption = "INPUT" Then
Set datauser = New ADODB.Recordset
txtiduser.SetFocus
        cmdinput.Caption = "SIMPAN"
        cmdbatal.Enabled = True
        cmdbatal.Caption = "BATAL"
        DataGrid1.Enabled = False
    ElseIf cmdinput.Caption = "SIMPAN" Then
        query = "insert into user values ('" & txtiduser.Text & "', '" & txtnamauser.Text & "', '" & txtusername.Text & "','" & txtpassword.Text & "','" & cmbhakakses.Text & "')"
        conn.Execute query
        Set datauser = New ADODB.Recordset
        datauser.Open "select * from user", conn
        Set DataGrid1.DataSource = datauser
        MsgBox "Data Berhasil Disimpan"
    End If
End Sub

Keterangan:
If cmdinput.Caption = "INPUT" Then artinya jika cmdinput captionnya INPUT maka akan melakukan perintah dibawahnya, ingat dalam hal ini tulisan INPUT bersifat case sensitive, jadi usahakan semua tombol (command button) tulis menggunakan huruf besar semua. Agar isi dari textbox bisa tersimpan di database, maka ada perintah cmdinput.Caption = "SIMPAN", jadi ketika tombol input di klik maka caption tombol tersebut akan berubah jadi SIMPAN. Kemudian perintah ElseIf cmdinput.Caption = "SIMPAN" Then jika cmdinput captionnya SIMPAN maka akan meload perintah query = "insert into user values ('" & txtiduser.Text & "', '" & txtnamauser.Text & "', '" & txtusername.Text & "','" & txtpassword.Text & "','" & cmbhakakses.Text & "')" ini merupakan coding dasar untuk menyimpan data pada mysql, kemudian perintah ini ditampung sementara pada variable query, setelah itu program akan meload perintah conn.Execute query artinya perintah query yang berisi coding simpan data sebelumnya akan di eksekusi. Setelah berhasil tersimpan maka akan mengeksekusi baris selanjutnya yaitu Set DataGrid1.DataSource = datauser coding ini berfungsi mengupdate nilai pada datagrid. Coba jalankan program, jika berhasil tanpa error, isi dan coba simpan, hal yang paling sering menyebabkan error pada tahap ini biasanya nama tabel salah, kemudian isi yang di inputkan ke field database tidak sesuai, misalnya database ada 5 field, sedangkan yang di masukkan dari vb hanya 4 text box.

Selanjutnya adalah coding untuk tombol edit (cmdedit), kodingan kali ini berhubungan dengan kodingan pada datagrid, agar data pada datagrid bisa di edit, jadi mari kita pahami kodingan memindahkan data dari datagrid ke textbox sebelahnya agar bisa di edit. Kodingannya simpel seperti berikut:

Private Sub DataGrid1_Click()
    txtiduser.Text = DataGrid1.Columns(0).Text
    txtnamauser.Text = DataGrid1.Columns(1).Text
    txtpassword.Text = DataGrid1.Columns(2).Text
    txtulangipassword.Text = DataGrid1.Columns(2).Text
    cmbhakakses.Text = DataGrid1.Columns(3).Text
   
    cmdinput.Enabled = False
    cmdbatal.Caption = "HAPUS"
    cmdbatal.Enabled = True
    cmdedit.Enabled = True
End Sub

Pada saat datagrid di klik maka akan menjalankan perintah
    txtiduser.Text = DataGrid1.Columns(0).Text
    txtnamauser.Text = DataGrid1.Columns(1).Text
    txtusername.Text = DataGrid1.Columns(2).Text
    txtpassword.Text = DataGrid1.Columns(3).Text
    txtulangipassword.Text = DataGrid1.Columns(4).Text
    cmbhakakses.Text = DataGrid1.Columns(5).Text
Columns(0) dimulai dari angka 0 karena ini merupakan array.

Setelah berhasil memindahkan data dari datagrid ke textbox maka selanjutnya adalah koding pada tombol editnya :

Private Sub cmdedit_Click()
    If cmdedit.Caption = "EDIT" Then
        aktif
        cmdedit.Caption = "UPDATE"
        txtnamauser.SetFocus
        cmddelete.Caption = "CANCEL"
    ElseIf cmdedit.Caption = "UPDATE" Then
        query = "update user set namauser='" & txtnamauser.Text & "', username='" & txtusername.Text & "', password='" & txtpassword.Text & "', hakakses='" & cmbhakakses.Text & "' where iduser= '" & txtiduser.Text & "'"
        conn.Execute query
        Set datauser = New ADODB.Recordset
        datauser.Open "select * from user", conn
        Set DataGrid1.DataSource = datauser
        MsgBox "data berhasil di update"
        nonaktif
        bersih
    End If
End Sub

Keterangan : perintah If cmdedit.Caption = "EDIT" Then jika tombol edit (cmdedit) captionnya adalah EDIT maka ketika di klik akan menjalankan perintah di bawahnya namun ElseIf cmdedit.Caption = "UPDATE" Then maka akan mengeksekusi perintah query = "update user set namauser='" & txtnamauser.Text & "', username='" & txtusername.Text & "', password='" & txtpassword.Text & "', hakakses='" & cmbhakakses.Text & "' where iduser= '" & txtiduser.Text & "'" ini merupakan kodingan untuk update pada mysql dan seperti diatas datanya akan di tampung pada variabel query.  Selanjutnya Set datauser = New ADODB.Recordset datauser.Open "select * from user", conn Set DataGrid1.DataSource = datauser perintah ini akan mengupdate nilai pada datagrid.
Sama kasusnya dengan tombol input sebelumnya, hal yang paling sering menyebabkan eror adalah query update mysql, jadi saya sarankan agar teman-teman lebih teliti dalam menulis query update ini.

Selanjutnya adalah tombol delete, ini juga berhubungan dengan kodingan datagrid diatas, isi kodingannya dengan perintah berikut :

Private Sub cmddelete_Click()
    If cmddelete.Caption = "DELETE" Then
                query = "delete from user  where iduser= '" & txtiduser.Text & "'"
                conn.Execute query
                Set datauser = New ADODB.Recordset
        datauser.Open "select * from user", conn
        Set DataGrid1.DataSource = datauser
        MsgBox "Data Berhasil Disimpan"
    End if
End Sub

Keterangan: perintah query = "delete from user  where iduser= '" & txtiduser.Text & "'" dan conn.Execute query merupakan perintah hapus pada mysql.


Demikian tutorial cara membuat crud sederhana dengan vb 6.0, mysql serta adodb connection,  selanjutnya saya akan membuat tutorial bagaimana cara membuat autonomor menggunakan vb 6.0, mysql serta adodb connection. Jika ada yang kurang jelas silakkan kita diskusi di kolom komentar.