Hubungkan Access dengan SQL Server
Applies ToAccess untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Coba ingat masa-masa bahagia ketika sup alfabet menjadi menu makanan yang menyenangkan. Simpan ingatan bahagia ini dalam memori Anda selagi kita merasakan pengalaman menikmati sup alfabet dalam versi database. Bagian berikut ini menguraikan dasar-dasar penggunaan database dengan string koneksi dan penggunaan antarmuka pemrograman database dalam kode Access VBA Anda.

Komponen akses data

Dalam Artikel ini

Menggunakan driver ODBC atau penyedia OLE DB

Menghubungkan antarmuka Access ke SQL Server secara terprogram

Ringkasan versi driver ODBC

Ringkasan versi penyedia OLE DB

Ringkasan kata kunci ODBC

Ringkasan kata kunci OLE DB

Menggunakan driver ODBC atau penyedia OLE DB

String koneksi sudah ada sejak lama. Anda dapat menentukan string koneksi yang diformat baik dalam antarmuka pengguna Access maupun dalam kode VBA. String koneksi (baik ODBC maupun OLE DB) mengirimkan informasi secara langsung ke database, seperti lokasi server, nama database, tipe keamanan, dan opsi lainnya yang berguna. Misalnya:

ODBC;DRIVER=SQL Server;SERVER="MyServer";DATABASE="MyHRdb";TRUSTED_CONNECTION=Yes
Provider=SQLOLEDB;Data Source=MyServer;Initial Catalog=MyHRdb; Integrated Security=SSPI;

Pada awalnya, terdapat SQL Server Native Client (SNAC), yaitu pustaka mandiri yang berisi teknologi ODBC dan OLEDB dan masih tersedia untuk SQL Server versi 2005 hingga 2012. Sebagian besar aplikasi warisan menggunakan SNAC yang masih didukung untuk kompatibilitas mundur, tetapi tidak disarankan untuk digunakan dalam pengembangan aplikasi baru. Anda harus menggunakan versi driver ODBC individu yang lebih baru dan dapat diunduh.

Driver ODBC

Konektivitas Database Terbuka (ODBC) adalah protokol yang dapat digunakan untuk menyambungkan database Access ke sumber data eksternal, seperti Microsoft SQL Server. Biasanya, sumber data file (juga disebut file DSN) digunakan untuk menambahkan string koneksi. Dalam hal ini, kata kunci FILEDSN digunakan pada string koneksi, sedangkan kata kunci DSN digunakan ketika disimpan dalam registri. Atau Anda dapat menggunakan VBA untuk mengatur properti ini menggunakan string koneksi "Tanpa DSN".

Selama bertahun-tahun, driver ODBC telah diluncurkan dalam tiga tahap:

  • Sebelum 2005, driver ODBC diluncurkan dengan Windows Data Access Components (WDAC), yang awalnya bernama Microsoft Data Access Components (MDAC). Komponen ini masih diluncurkan dengan Windows untuk kompatibilitas mundur. Untuk informasi selengkapnya, lihat Microsoft atau Windows Data Access Components.

  • Driver ODBC diluncurkan dengan SNAC untuk SQL Server 2005 hingga SQL Server 2012.

  • Setelah SQL Server 2012, Driver ODBC telah diluncurkan secara terpisah dan menyertakan dukungan untuk fitur SQL Server yang baru.

Untuk pengembangan baru, hindari menggunakan driver ODBC dari dua tahap pertama, dan gunakan driver ODBC dari tahap ketiga.

Penyedia OLE DB

Penautan dan Penyematan Objek, Database (OLE DB) adalah protokol lebih baru yang dapat Anda gunakan untuk menghubungkan database Access ke sumber data eksternal, seperti Microsoft SQL Server. OLE DB tidak memerlukan DSN serta memberikan akses penuh ke sumber data ODBC dan driver ODBC.

Tips    Biasanya, kotak dialog Properti Tautan Data digunakan untuk menambahkan string koneksi OLE DB. Meskipun kotak dialog Properti Tautan Data tidak dapat dibuka di Access, Anda dapat membuat file .txt kosong di Windows Explorer, mengubah tipe filenya menjadi .udl, lalu mengklik ganda file. Setelah membuat string koneksi, ubah tipe file tersebut kembali menjadi .txt.

Selama bertahun-tahun, penyedia OLE DB telah diluncurkan dalam tiga tahap:

  • Sebelum 2005, penyedia OLE DB diluncurkan dengan Windows Data Access Components (WDAC), yang awalnya bernama Microsoft Data Access Components (MDAC).

  • Penyedia OLE DB diluncurkan dengan SQL Server 2005 hingga SQL Server 2017. Komponen ini dihentikan pada tahun 2011.

  • Tahun 2017, penyedia OLE DB SQL Server kembali disediakan.

Versi saat ini yang disarankan untuk pengembangan solusi baru adalah OLE DB Driver 18 untuk SQL Server.

Cara mengoptimalkan kinerja dengan string koneksi ODBC

Untuk mengoptimalkan kinerja, meminimalkan lalu lintas jaringan, dan mengurangi akses multipengguna ke database SQL Server, gunakan string koneksi seminimal mungkin dengan membagikan string koneksi melalui beberapa kumpulan data. Meskipun hanya mengirimkan string koneksi ke server, Access dapat memahaminya dan menggunakan kata kunci berikut: DSN, DATABASE, UID, PWD, dan DRIVER untuk membantu meminimalkan komunikasi klien/server.

Catatan    Jika koneksi ODBC ke sumber data eksternal hilang, Access secara otomatis akan mencoba untuk menyambungkannya kembali. Jika percobaan berhasil, Anda dapat melanjutkan pekerjaan. Jika percobaan gagal, Anda masih dapat bekerja dengan objek yang tidak mengandalkan koneksi. Untuk menyambungkan kembali, tutup dan buka kembali Access.

Rekomendasi ketika menggunakan ODBC dan OLE DB

Hindari mencampurkan teknologi akses database dan string koneksi. Gunakan string koneksi ODBC untuk DAO. Gunakan string koneksi OLE DB untuk ADO. Jika aplikasi Anda berisi kode VBA yang menggunakan DAO dan ADO, gunakan driver ODBC untuk DAO dan penyedia OLE DB untuk ADO. Selalu gunakan fitur dan dukungan terbaru untuk masing-masing ODBC dan OLEDB.

ODBC menggunakan istilah driver dan OLE DB menggunakan istilah penyedia. Istilah tersebut menjelaskan tipe komponen perangkat lunak yang sama tetapi tidak dapat saling menggantikan dalam sintaksis string koneksi. Gunakan nilai yang benar sebagaimana didokumentasikan.

Atas Halaman

Menghubungkan antarmuka Access ke SQL Server secara terprogram

Ada dua cara utama untuk menghubungkan antarmuka Access ke database SQL Server secara terprogram.

DAO

Objek akses data (DAO) menyediakan antarmuka abstrak ke database. Microsoft Data Access Objects (DAO) adalah model objek pemrograman bawaan yang memungkinkan Anda mengoptimalkan Access dan SQL Server untuk membuat, menghapus, mengubah, dan mencantumkan objek, tabel, bidang, indeks, relasi, kueri, properti, dan database eksternal.

Untuk informasi selengkapnya, lihat Referensi Microsoft Data Access Objects.

ADO

Objek Data ActiveX (ADO) menyediakan model pemrograman tingkat tinggi dan tersedia di Access dengan referensi ke pustaka pihak ketiga. ADO mudah dipelajari dan memungkinkan aplikasi klien untuk mengakses dan mengolah data dari berbagai sumber, termasuk Access dan SQL Server. Keunggulan utamanya adalah mudah digunakan, berkecepatan tinggi, minim kelebihan memori, dan ruang disk kecil. ADO juga mendukung fitur utama untuk perancangan dan aplikasi berbasis Web.

Untuk informasi selengkapnya, lihat Referensi Objek Data ActiveX Microsoft dan Objek Data ActiveX (ADO) Microsoft.

Mana yang harus Anda gunakan?

Dalam solusi Access yang menggunakan kode VBA, Anda dapat menggunakan DAO, ADO, atau keduanya sebagai teknologi antarmuka database. DAO akan selalu menjadi default di Access. Misalnya, semua formulir, laporan, dan kueri Access menggunakan DAO. Namun, ketika beralih ke SQL Server, sebaiknya gunakan ADO agar solusi Anda menjadi lebih efisien. Berikut adalah pedoman umum untuk membantu Anda memutuskan apakah harus menggunakan DAO atau ADO.

Gunakan DAO jika Anda ingin:

  • Membuat formulir baca/tulis terikat tanpa menggunakan VBA.

  • Membuat kueri tabel lokal.

  • Mengunduh data ke dalam tabel sementara.

  • Menggunakan kueri langsung sebagai sumber data untuk laporan atau formulir dalam mode baca-saja.

  • Menentukan dan menggunakan objek TableDef atau Querydef di VBA.

Gunakan ADO jika Anda ingin:

  • Memanfaatkan lebih banyak cara untuk pengoptimalan, seperti menjalankan operasi asinkron.

  • Menjalankan kueri langsung DDL dan DML.

  • Mengakses data SQL Server secara langsung melalui perangkat rekam di VBA.

  • Menulis kode yang lebih sederhana untuk tugas tertentu, seperti streaming Blob.

  • Menerapkan prosedur yang tersimpan secara langsung, dengan parameter, menggunakan objek perintah di VBA.

Atas Halaman

Ringkasan versi driver ODBC

Tabel berikut ini merangkum informasi penting tentang versi driver ODBC, lokasi unduhan, dan dukungan fitur. Pastikan Anda menggunakan versi bit driver yang tepat (64-bit atau 32-bit) berdasarkan Windows, bukan Office. Jika menjalankan Access 32-bit di Windows 64-bit, instal driver 64-bit, yang menyertakan komponen 32-bit yang diperlukan untuk Access.

Untuk informasi selengkapnya, lihat Menggunakan Kata Kunci String Koneksi dengan SQL Server Native Client, Catatan Rilis untuk ODBC ke SQL Server di Windows (V17), dan Fitur Microsoft ODBC Driver untuk SQL Server di Windows (V13, 11).

Driver ODBC

Versi

Unduh

Fitur baru

Driver ODBC 17.0 hingga 17.3

SQL Server 2017

Unduh

Driver ODBC 17.3

Menggunakan Azure Active Directory dengan Driver ODBC

Batasan driver ODBC ketika menggunakan Always Encrypted

Menggunakan Transaksi XA

Driver ODBC 17.2

Menggunakan Always Encrypted dengan ODBC Driver untuk SQL Server

Klasifikasi Data

Dukungan Kolase dan Unicode pengodean server UTF-8

Driver ODBC 17.1

Menggunakan Always Encrypted dengan ODBC Driver untuk SQL Server

Driver ODBC 17.0

Always Encrypted

UseFMTONLY    Untuk menggunakan metadata warisan dalam kasus khusus yang memerlukan tabel sementara. Lihat Catatan Rilis untuk ODBC ke SQL Server di Windows

Perbedaan ketika menggunakan Instans Terkelola (ODBC versi 17)

Driver ODBC 13.1

SQL Server 2016 SP1, SQL Azure

Unduh

Always Encrypted

Azure Active Directory

Grup Ketersediaan AlwaysOn

Driver Aware Connection Pooling di Driver ODBC untuk SQL Server

Driver ODBC 13.0

SQL Server 2016

Unduh

Nama Domain Internasional (IDN)

Driver ODBC 11.0

SQL Server 2005 hingga 2012

Download

Driver-Aware Connection Pooling

Ketahanan Koneksi di Windows ODBC Driver

Eksekusi Asinkron

Nama Prinsipal Layanan (SPN) dalam Sambungan Klien (ODBC)

Fitur Microsoft ODBC Driver untuk SQL Server di Windows

Atas Halaman

Ringkasan versi penyedia OLE DB

Tabel berikut ini merangkum informasi penting tentang versi penyedia OLE DB, lokasi unduhan, dan dukungan fitur. Pastikan Anda menggunakan versi bit driver yang tepat (64-bit atau 32-bit) berdasarkan Windows, bukan Office. Jika menjalankan Access 32-bit di Windows 64-bit, instal driver 64-bit, yang menyertakan komponen 32-bit yang diperlukan untuk Access.

Untuk informasi selengkapnya, lihat Menggunakan Kata Kunci String Koneksi dengan SQL Server Native Client.

Penyedia OLE DB

Versi

Unduh

Fitur baru

OLE DB Driver 18.2.1

(MSOLEDBSQL)

SQL Server 2017

Unduh

Lihat Fitur OLE DB Driver untuk SQL Server dan Catatan rilis Microsoft OLE DB Driver, untuk SQL Server

SQL Server Native Client (SQLNCLI)

SQL Server 2005 hingga 2012

Tidak didukung, jangan gunakan

OLE DB Driver (SQLOLEDB)

Tidak didukung, jangan gunakan

Atas Halaman

Ringkasan kata kunci ODBC

Tabel berikut ini merangkum kata kunci ODBC yang dikenali oleh SQL Server beserta tujuannya. Hanya subhimpunan yang dapat dikenali oleh Access.

Kata kunci

Deskripsi

Addr

Alamat jaringan server yang menjalankan instans SQL Server.

AnsiNPW

Menentukan penggunaan perilaku berdasarkan ANSI untuk menangani perbandingan NULL, pengisi data karakter, peringatan, dan penggabungan NULL (Ya atau Tidak).

APP

Nama aplikasi yang menerapkan SQLDriverConnect.

ApplicationIntent

Mendeklarasikan tipe beban kerja aplikasi ketika menyambungkan ke server (ReadOnly atau ReadWrite).

AttachDBFileName

Nama file utama dari database yang dapat dilampirkan.

AutoTranslate

Menentukan apakah string karakter ANSI terkirim antara klien atau server atau diterjemahkan ke Unicode (Ya atau Tidak).

Database

Nama database. Deskripsi Tujuan koneksi. Driver Nama driver seperti yang dikembalikan oleh SQLDrivers.

DSN

Nama sumber data sistem atau pengguna ODBC yang sudah ada. Encrypt Menentukan apakah data harus dienkripsi sebelum dikirimkan melalui jaringan (Ya atau Tidak).

Failover_Partner

Nama server mitra failover yang akan digunakan jika koneksi tidak dapat dilakukan ke server utama.

FailoverPartnerSPN

SPN untuk mitra failover.

Fallback

Kata kunci yang sudah tidak didukung.

FileDSN

Nama sumber data file ODBC yang sudah ada. Language Bahasa SQL Server.

MARS_Connection

Menentukan beberapa rangkaian hasil aktif (MARS) pada koneksi untuk SQL Server 2005 (9.x) atau yang lebih baru (Ya atau Tidak).

MultiSubnetFailover

Menentukan perlunya sambungan ke pendengar grup ketersediaan dari grup ketersediaan dari grup ketersediaan SQL Server atau Failover Cluster Instance (Ya atau Tidak).

Net

dbnmpntw menunjukkan jalur bernama dan dbmssocn menunjukkan TCP/IP.

PWD

Kata sandi data masuk SQL Server.

QueryLog_On

Menentukan pencatatan log kueri yang berjalan dalam waktu lama (Ya atau Tidak).

QueryLogFile

Nama dan jalur lengkap file yang akan digunakan untuk mencatat data pada kueri yang berjalan dalam waktu lama.

QueryLogTime

String karakter digit yang menentukan batas (dalam milidetik) untuk mencatat kueri yang berjalan dalam waktu lama.

QuotedId

Menentukan apakah SQL Server menggunakan aturan ISO terkait penggunaan tanda kutip dalam pernyataan SQL (Ya atau Tidak).

Regional

Menentukan apakah driver ODBC SQL Server Native Client menggunakan pengaturan klien ketika mengonversi data mata uang, tanggal, atau waktu menjadi data karakter (Ya atau Tidak).

SaveFile

Nama file sumber data ODBC yang menjadi tujuan penyimpanan atribut koneksi saat ini jika koneksi berhasil.

Server

Nama instans SQL Server: Server di jaringan, alamat IP, atau alias Manajer Konfigurasi.

ServerSPN

SPN untuk server.

StatsLog_On

Memungkinkan penyimpanan data kinerja driver ODBC SQL Server Native Client.

StatsLogFile

Nama dan jalur file lengkap yang digunakan untuk mencatat statistik kinerja driver ODBC SQL Server Native Client.

Trusted_Connection

Menentukan apakah Mode Otentikasi Windows atau nama pengguna atau kata sandi SQL Server digunakan untuk validasi masuk (Ya atau Tidak).

TrustServerCertificate

Jika digunakan dengan Encrypt akan mengaktifkan enkripsi menggunakan sertifikat server yang ditandatangani secara mandiri.

UID

Nama data masuk SQL Server.

UseProcForPrepare

Kata kunci yang sudah tidak didukung.

WSID

Pengidentifikasi perangkat kerja, nama jaringan komputer tempat aplikasi berada.

Atas Halaman

Ringkasan kata kunci OLE DB

Tabel berikut ini merangkum kata kunci OLE DB yang dikenali oleh SQL Server beserta tujuannya. Hanya subhimpunan yang dapat dikenali oleh Access.

Kata kunci

Deskripsi

Addr

Alamat jaringan server yang menjalankan instans SQL Server.

APP

String yang mengidentifikasi aplikasi.

ApplicationIntent

Mendeklarasikan tipe beban kerja aplikasi ketika menyambungkan ke server (ReadOnly atau ReadWrite).

AttachDBFileName

Nama file utama dari database yang dapat dilampirkan.

AutoTranslate

Mengonfigurasi terjemahan karakter OEM/ANSI (True atau False).

Connect Timeout

Jumlah waktu tunggu (dalam detik) untuk menyelesaikan inisialisasi sumber data.

Current Language

Nama bahasa SQL Server.

Data Source

Nama instans SQL Server dalam organisasi.

Database

Nama database.

DataTypeCompatibility

Angka yang menunjukkan mode penanganan tipe data yang akan digunakan.

Encrypt

Menentukan apakah data harus dienkripsi sebelum dikirimkan melalui jaringan (Ya atau Tidak).

FailoverPartner

Nama server failover yang digunakan untuk pencerminan database.

FailoverPartnerSPN

SPN untuk mitra failover.

Initial Catalog

Nama database.

Initial File Name

Nama file utama (mencakup nama jalur lengkap) dari database yang dapat dilampirkan.

Integrated Security

Digunakan untuk Windows Authentication (SSPI).

Language

Bahasa SQL Server.

MarsConn

Menentukan beberapa rangkaian hasil aktif (MARS) pada koneksi untuk SQL Server 2005 (9.x) atau yang lebih baru (Ya atau Tidak).

Net

Pustaka jaringan yang digunakan untuk membuat koneksi ke instans SQL Server di organisasi.

Network Address

Alamat jaringan instans SQL Server di organisasi.

PacketSize

Ukuran paket jaringan. Nilai defaultnya adalah 4096.

Persist Security Info

Menentukan apakah pertahankan keamanan diaktifkan (True atau False).

PersistSensitive

Menentukan apakah pertahankan sensitif diaktifkan (True atau False).

Provider

Untuk SQL Server Native Client, gunakan SQLNCLI11.

PWD

Kata sandi data masuk SQL Server.

Server

Nama instans SQL Server: Server di jaringan, alamat IP, atau alias Manajer Konfigurasi.

ServerSPN

SPN untuk server.

Timeout

Jumlah waktu tunggu (dalam detik) untuk menyelesaikan inisialisasi sumber data.

Trusted_Connection

Menentukan apakah Mode Otentikasi Windows atau nama pengguna atau kata sandi SQL Server digunakan untuk validasi masuk (Ya atau Tidak).

TrustServerCertificate

Menentukan apakah sertifikat server divalidasi (True atau False).

UID

Nama data masuk SQL Server.

Use Encryption for Data

Menentukan apakah data perlu dienkripsi sebelum dikirimkan melalui jaringan (True atau False).

UseProcForPrepare

Kata kunci yang sudah tidak didukung.

WSID

Pengidentifikasi perangkat kerja, nama jaringan komputer tempat aplikasi berada.

Atas Halaman

Mengelola sumber data ODBC

Mengelola tabel tertaut

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.