Skip to main content

String Koneksi SQL Server di Access VBA DAO

Kita dapat membuat aplikasi database Access yang berfungsi sebagai front-end tanpa harus menggunakan linked table ke SQL Server. Dengan demikian, pada aplikasi database Access, di Navigation Pane objek Tables, kita tidak mendapatkan tabel yang berasal dari SQL Server.Hanya tabel temporer sajalah yang diperlukan di objek Tables.
Dua cara koneksi ke SQL Server, melalui Windows Authentication dan SQL Server Authentication
Untuk itu, kita harus menuliskan kode string koneksi SQL Server di VBA. Kita dapat menuliskan string koneksi langsung sebagai parameter saat membuka database atau dengan membuat fungsi di modul yang outputnya berupa string. Output inilah yang kemudian digunakan sebagai parameter untuk membuka database. Berikut ini contoh kasusnya:

Pada dasarnya, ada berbagai macam cara menuliskan string koneksi SQL Server di Access VBA DAO. Dalam contoh ini, kita hanya menggunakan dua cara saja, melalui Windows Authentication dan SQL Server Authentication.

Bila menuliskan langsung sebagai parameter:

Contoh fungsi membukaDatabase ini akan menjalankan perintah OpenDatabase di mana parameter Connect berisi string koneksi SQL Server (cara SQL Server Authentication).

Function membukaDatabase()
  Dim daoDatabase As DAO.Database
On Error GoTo Err_Msg
    Set daoDatabase = OpenDatabase("", dbDriverNoPrompt, True, _
    "Driver=" & "{SQL Server};" & _
    "Database=" & "Masukkan nama database SQL Server di sini" & ";" & _ 
    "UID=" & "masukkan nama user login di SQL Server" & ";" & _
    "PWD=" & "masukkan password untuk user login di SQL Server" & ";" &  _ 
    "SERVER=" & "(Local)" & ";" &  _  
    "Port=" & "")
Exit_Function:
  Exit Function
Err_Msg:
  MsgBox "Function membukaDatabase, Error # " & str(Err.Number) & ", source: " & Err.Source & _
  Chr(13) & Err.description
  Resume Exit_Function
End Function

Bila menuliskan langsung sebagai fungsi di modul:

Kita harus membuat fungsi string koneksi MySQL yang outputnya berupa string terlebih dulu, seperti ini:
Menggunakan Windows Authentication
Function strKoneksiMySQL() As String
'bila ditaruh di komputer "SERVER=" & "(Local)" & ";" & _
'atau ganti (Local) dan tuliskan nama server bila ada.
  strKoneksiMySQL = "Driver=" & "{SQL Server}"  & ";" & _
  "Database=" & "Masukkan nama database SQL Server di sini" & ";" & _
  "SERVER=" & "(Local)" & ";" & _ 
  "Trusted_Connection=Yes"
End Function

Menggunakan SQL Server Authentication
Function strKoneksiMySQL() As String
  strKoneksiMySQL = "Driver=" & "{SQL Server}" & ";" & _
    "Database=" & "Masukkan nama database SQL Server di sini" & ";" & _
    "UID=" & "masukkan nama user login di SQL Server" & ";" & _
    "PWD=" & "masukkan password untuk user login di SQL Server" & ";" & _
    "SERVER=" & "(Local)" & ";" & _
    "Port=" & ""
End Function

Setelah itu membuat fungsi lain yang digunakan untuk membuka database dengan menggunakan strKoneksiMySQL sebagai nilai dari parameter Connect pada perintah OpenDatabase:

Fungsi membukaDatabase diubah menjadi seperti ini:
Function membukaDatabase()
  Dim daoDatabase As DAO.Database
On Error GoTo Err_Msg
    Set daoDatabase = OpenDatabase("", dbDriverNoPrompt, True, strKoneksiMySQL)
Exit_Function:
  Exit Function
Err_Msg:
  MsgBox "Function membukaDatabase, Error # " & str(Err.Number) & ", source: " & Err.Source & _
  Chr(13) & Err.description
  Resume Exit_Function
End Function
Bila database sudah terbuka, dengan menggunakan fungsi membukaDatabase di atas, kita dapat melakukan operasi lainnya, seperti menampilkan, memperbaharui, dan menghapus record seperti biasa.

Comments

Posting Terpopuler

Normalisasi, Denormalisasi, dan Anomali Database

Membuat Fungsi Untuk Menghitung Pajak Penghasilan PPh 21 di MS Access

Format Untuk Field Dengan Tipe Data Number dan Currency di MS Access