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).

  1. Function membukaDatabase()  
  2.   Dim daoDatabase As DAO.Database  
  3. On Error GoTo Err_Msg  
  4.     Set daoDatabase = OpenDatabase("", dbDriverNoPrompt, True, _  
  5.     "Driver=" & "{SQL Server};" & _  
  6.     "Database=" & "Masukkan nama database SQL Server di sini" & ";" & _   
  7.     "UID=" & "masukkan nama user login di SQL Server" & ";" & _  
  8.     "PWD=" & "masukkan password untuk user login di SQL Server" & ";" &  _   
  9.     "SERVER=" & "(Local)" & ";" &  _    
  10.     "Port=" & "")  
  11. Exit_Function:  
  12.   Exit Function  
  13. Err_Msg:  
  14.   MsgBox "Function membukaDatabase, Error # " & str(Err.Number) & ", source: " & Err.Source & _  
  15.   Chr(13) & Err.description  
  16.   Resume Exit_Function  
  17. 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
  1. Function strKoneksiMySQL() As String  
  2. 'bila ditaruh di komputer "SERVER=" & "(Local)" & ";" & _  
  3. 'atau ganti (Local) dan tuliskan nama server bila ada.  
  4.   strKoneksiMySQL = "Driver=" & "{SQL Server}"  & ";" & _  
  5.   "Database=" & "Masukkan nama database SQL Server di sini" & ";" & _  
  6.   "SERVER=" & "(Local)" & ";" & _   
  7.   "Trusted_Connection=Yes"  
  8. End Function  

Menggunakan SQL Server Authentication
  1. Function strKoneksiMySQL() As String  
  2.   strKoneksiMySQL = "Driver=" & "{SQL Server}" & ";" & _  
  3.     "Database=" & "Masukkan nama database SQL Server di sini" & ";" & _  
  4.     "UID=" & "masukkan nama user login di SQL Server" & ";" & _  
  5.     "PWD=" & "masukkan password untuk user login di SQL Server" & ";" & _  
  6.     "SERVER=" & "(Local)" & ";" & _  
  7.     "Port=" & ""  
  8. 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:
  1. Function membukaDatabase()  
  2.   Dim daoDatabase As DAO.Database  
  3. On Error GoTo Err_Msg  
  4.     Set daoDatabase = OpenDatabase("", dbDriverNoPrompt, True, strKoneksiMySQL)  
  5. Exit_Function:  
  6.   Exit Function  
  7. Err_Msg:  
  8.   MsgBox "Function membukaDatabase, Error # " & str(Err.Number) & ", source: " & Err.Source & _  
  9.   Chr(13) & Err.description  
  10.   Resume Exit_Function  
  11. 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

Cara Mengatur dan Menggunakan ODBC untuk Mengakses Data Eksternal

Fungsi Untuk Membuka Database di Access VBA

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