Thursday, March 9, 2017

Membuat Fungsi Backup MySQL Menggunakan Visual Basic

Hallo sahabat-sahabat SB semua!!!

Pada kesempatan pagi ini, kita akan mempelajari bagaimana meng-backup data dari database MySQL melalui Visual Basic khususnya Visual Basic 6.0. Bagaimana cara membuatnya? Berikut ulasannya.


Backup data merupakan aktivitas pengamanan data terhadap hilangnya data. Proses backup dapat dilakukan dengan berbagai cara, yang intinya melakukan pengamanan data baik memindah atau menduplikasi data adalah backup. Mengapa backup data sangat penting? seorang individu, sebuah perusahaan, organisasi, ataupun suatu kelompok dalam menjalankan aktivitasnya melibatkan sebuah komputer, tentu menginginkan datanya aman dan terhindar dari lost data.

Seorang Application Developer yang baik tentu mempertimbangkan hal tersebut sehingga aplikasi yang diciptakan untuk customer memiliki fasilitas backup data dari database. Baik fasilitas backup data maupun restore data wajib tentunya diberikan pada setiap aplikasi yang dibangun/dikembangkan.

Sebelum kita melangkah pada inti pembahasan, perlu dijadikan catatan penting bahwa koneksi yang digunakan untuk menghubungkan project dengan database MySQL adalah VB MySQL Direct. Sehingga, apabila sahabat setia SB belum mengetahui koneksi Visual Basic dengan database MySQL menggunakan VB MySQL Direct, silakan sahabat SB membaca ulasan mengenai "Koneksi VB Ke MySQL dengan VB MySQLDirect" sebelumnya.

Untuk membuat fungi backup database MySQL, langkah-langkahnya adalah sebagai berikut:

Pertama, Buatlah project baru kemudian tambahkan sebuah Form.

Kemudian, tambahkan komponen Microsoft Common Dialog Control 6.0.


Selanjutnya, tambahkan:
1 Label, ubah caption menjadi "Lokasi Penyimpanan"
1 TextBox, ubah name menjadi"txtLokasi"
1 Command Button, ubah name menjadi "cmdCari" dan caption menjadi "..."
1 Command Button, ubah name menjadi "cmdBackup" dan caption menjadi "&Backup"
1 Command Button, ubah name menjadi "cmdKeluar" dan caption menjadi "&Keluar"
1 Common Dialog, ubah name menjadi "CD" dan tambahkan pada filter "Support File(*.bkp)| *.BKP"

Selanjutnya, atur tampilan hingga seperti gambar form berikut:

Selanjutnya tambahkan kode berikut ke dalam Form.

Public Koneksi As New MYSQL_CONNECTION
Public RC As New MYSQL_RS, RC2 As New MYSQL_RS, RC3 As New MYSQL_RS
Public SQL As String, SQL2 As String, SQL3 As String, NmServer As String, NmDB As String, NmUsr As String, NmPwd As String, NmPort As String
Private Sub cmdBackup_Click()
On Error GoTo Salah
Dim aFile() As String, nmFile As String, jField As Integer
jField = 0
If txtLokasi = "" Then MsgBox "Tentukan lokasi penyimpanan file backup!": Exit Sub
aFile = Split(txtLokasi, "\", , vbTextCompare)
nmFile = aFile(UBound(aFile) - 1)
SQL = "SHOW TABLES"
Buka
Do While Not RC.EOF
    If Left(RC.Fields(0), 2) = "t_" Then
        SQL3 = "SHOW FIELDS FROM " & RC.Fields(0)
        Buka3
        jField = 0
            Do While Not RC3.EOF
                jField = jField + 1
                RC3.MoveNext
            Loop
        Tutup3
        SQL2 = "select*from " & RC.Fields(0)
        Buka2
            Do While Not RC2.EOF
                txtHasil = txtHasil & "REPLACE INTO " & RC.Fields(0) & " values("
                For I = 0 To jField - 1
                    If RC2.Fields(I) = "" Then txtHasil = txtHasil & """""" Else txtHasil = txtHasil & """" & RC2.Fields(I) & """"
                    If I < (jField - 1) Then txtHasil = txtHasil & ","
                Next
                txtHasil = txtHasil & "); "
                RC2.MoveNext
            Loop
        Tutup2
    End If
    RC.MoveNext
Loop
Tutup
    'PROSES PEMBUATAN FILE
    Open txtLokasi For Output As #1
    Print #1, txtHasil
    Close #1
MsgBox "Backup database berhasil!", vbInformation, "Backup Sukses"
Exit Sub
Salah:
MsgBox "Backup database gagal!" & vbCrLf & vbCrLf & "Kode Error: " & Err.Number & vbCrLf & "Keterangan: " & Err.Description, vbCritical, "Backup Gagal"
End Sub
Private Sub cmdCari_Click()CD.FileName = "Backup_DB_" & UCase(NmDB) & "_" & Format(Now, "DD.MM.YYYY_HH.NN.SS") & ".BKP"CD.ShowSaveIf CD.FileName <> "" Then    txtLokasi = CD.FileNameElse    txtLokasi = ""End IfEnd Sub
Private Sub cmdKeluar_Click()EndEnd Sub
Private Sub Form_Load()    NmServer = "localhost"          'IP Mysql    NmDB = "latihan"           'Nama Database    NmUsr = "root"            'Login Mysql    NmPwd = "admin"      'Password Mysql    NmPort = "3306"         'Port Mysql        Set Koneksi = New MYSQL_CONNECTION    Koneksi.OpenConnection NmServer, NmUsr, NmPwd, NmDB, NmPort    Koneksi.CursorLocation = adUseClient        If Koneksi.State = MY_CONN_CLOSED Then        MsgBox "Ada kesalahan dengan server, periksa apakah server sudah berjalan!", vbExclamation, "Fatal error"    End IfEnd Sub
Private Sub Buka()
    Set RC = New MYSQL_RS
    RC.OpenRs SQL, Koneksi, adOpenDynamic, adLockBatchOptimistic
End Sub
Private Sub Buka2()
    Set RC2 = New MYSQL_RS
    RC2.OpenRs SQL2, Koneksi, adOpenDynamic, adLockBatchOptimistic
End Sub
Private Sub Buka3()
    Set RC3 = New MYSQL_RS
    RC3.OpenRs SQL3, Koneksi, adOpenDynamic, adLockBatchOptimistic
End Sub
Function Tutup() As Boolean    If Tutup = True Then        RC.CloseRecordset        Koneksi.CloseConnection        Koneksi = Nothing    End IfEnd Function
Function Tutup2()    If Tutup2 = True Then        RC2.CloseRecordset        Koneksi.CloseConnection        Koneksi = Nothing    End IfEnd Function
Function Tutup3()    If Tutup3 = True Then        RC3.CloseRecordset        Koneksi.CloseConnection        Koneksi = Nothing    End IfEnd Function


Selanjutnya, jalankan program, pilih lokasi penyimpanan backup, dan pilih tombol Backup. Lihat hasilnya.. Mudahkan??

Contoh project di atas menggunakan database MySQL lokal, dengan username ROOT dan password ADMIN dan port 3306. Sesuaikan setting di atas dengan MySQL yang berjalan pada komputer sahabat semua.

Jika sahabat-sahabat ingin mendapatkan contoh project di atas yang sudah jadi, sahabat dapat mengunduh melalui link yang terletak pada tengah artikel dan password terletak pada akhir artikel.

Sekian ulasan pada kesempatan ini, jika ada penjelasan yang kurang, sahabat dapat menanyakan melalui komentar. Termasuk masukan-masukan yang mendukung ulasan ini sangat diharapkan. Terima kasih.

Password: suruhbelajar.blogspot.com
Share:

2 komentar:

Kritik dan saran yang membangun kami harapkan!

Recent Posts

Unordered List

  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  • Aliquam tincidunt mauris eu risus.
  • Vestibulum auctor dapibus neque.

Blog ini sangat membantu bagi anda?