VB6: Mengetahui Apakah DSN/Database ODBC Driver Sudah Terinstall Atau Belum

Posted: Mei 10, 2008 in VB 6

Dalam membuat aplikasi khususnya yang berhubungan dengan database, tentunya kita tidak bisa menghindar dari apa yang namanya DSN atau Driver database atau ODBC Driver, karena mereka merupakan jembatan yang akan kita gunakan untuk mengakses dan memanipulasi data yang ada dalam database.
Mungkin kita tidak akan memperhatikan keberadaan driver tersebut jika kita membuat aplikasi menggunakan databasenya Ms Access (*.Mdb), untuk mengaksesnya biasanya kita menggunakan driver Microsoft Access Driver (*.Mdb) ataupun Driver do Microsoft Access (*.Mdb) yang natobene telah terinstall langsung saat kita menginstall OS Windows ataupun paket Office, tapi bagaimana jika database engine yang digunakan adalah MySql/PostgreSql/FireBird Sql.
Untuk MySql khususnya MySql versi 5.x, driver yang digunakan adalah MySql ODBC 3.51 Driver yang tidak akan atau belum terinstall saat kita menginstall OS Windows ataupun saat kita Menginstall MySql Server itu sendiri di suatu mesin. Driver MySql ODBC 3.51 Driver dapat diinstall dengan menginstall package MySQL ODBC 3.51 Driver yang dapat didownload dari website mysql.

Kembali ketopik pembahasan, saat aplikasi dijalankan dan akan membuat koneksi ke database maka aplikasi akan menggunakan driver tersebut, jika driver yang digunakan tersedia maka aplikasi akan dapat membuat koneksi, jika tidak tersedia maka aplikasi tidak akan dapat membuat koneksi ke database. Ibarat kita akan menyeberangi sungai yang lebar, dalam dan deras, untuk menyeberang kita butuh suatu jembatan ataupun perahu, nah disini driver database ibarat jembatan ataupun perahu tersebut.

Dengan pemasalahan diatas kita dapat membuat aplikasi kita sedikit smart yaitu pada saat akan membuat koneksi kedatabase kita dapat mengecek dahulu apakah driver yang kita gunakan sudah tersedia atau belum, bila perlu jika ternyata driver tidak tersedia aplikasi dapat kita otomatis menginstall sendiri driver yang dibutuhkan (Tergantung dari spesifikasi driver itu sendiri, jika driver yang kita gunakan adalah MySql ODBC 3.51, sangat bisa dan ini sudah saya aplikasikan sendiri)

Untuk VB 6, Library yang dapat anda gunakan adalah ODBC Driver & Data Source Name Functions yang ada pada file ODBCTOOL.dll, file ini biasanya tidak ada didirektori system windows tapi ada didirektori Program files\Microsoft Visual Studio\Common\Tools\APE, anda dapat meload langsung dari VB ataupun memindahkan dahulu ke windows system baru kemudian diload ke program.

Berikut adalah fungsi untuk mengecek driver :

Function cekDriverExists(driverName As String) As Boolean
    Dim ODBCTool As New ODBCTool.Dsn
    Dim Dsn() As String, i As Long
    If ODBCTool.GetOdbcDriverList(Dsn()) Then
        For i = 0 To UBound(Dsn)
            If LCase(Dsn(i)) = LCase(driverName) Then
                cekDriverExists = True
                Exit Function
            End If
        Next
    End If
End Function

berikut adalah sintak yang memanggil fungsi cekDriverExists untuk mengetahui apakah driver tersedia atau tidak :
Sub main()
    Dim driverName As String
    driverName = “MySql ODBC 3.51 Driver”
    If cekDriverExists(driverName) = True Then
        MsgBox “Driver ‘” & driverName & “‘ tersedia”, vbInformation
    Else
        MsgBox “Driver ‘” & driverName & “‘ tidak tersedia”, vbExclamation
    End If
End Sub

Komentar
  1. asdar mengatakan:

    mohon, alamat
    Bagaimana driver yang dimaksud bisa didownload jika aplikasi masih menggunakan sistem DOS, apakah ada situs yang menyediakannya?
    demikian, terimakasih
    Asdar

  2. astawan mengatakan:

    Kalau boleh tau, aplikasi yang anda buat menggunakan software apa?

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s