Memilih Sumber Data atau Driver

Sumber data atau driver yang digunakan oleh aplikasi terkadang dikodekan secara permanen dalam aplikasi. Misalnya, aplikasi kustom yang ditulis oleh departemen MIS untuk mentransfer data dari satu sumber data ke sumber data lainnya akan berisi nama sumber data tersebut-aplikasi tidak akan berfungsi dengan sumber data lain. Contoh lain adalah aplikasi vertikal, seperti yang digunakan untuk entri pesanan. Aplikasi semacam itu selalu menggunakan sumber data yang sama, yang memiliki skema yang telah ditentukan sebelumnya yang diketahui oleh aplikasi.

Aplikasi lain memilih sumber data atau driver pada waktu proses. Biasanya, ini adalah aplikasi generik yang melakukan kueri ad hoc, seperti spreadsheet yang menggunakan ODBC untuk mengimpor data. Aplikasi tersebut biasanya mencantumkan sumber data atau driver yang tersedia dan memungkinkan pengguna memilih yang ingin mereka kerjakan. Apakah aplikasi generik mencantumkan sumber data, driver, atau keduanya sering bergantung pada apakah aplikasi menggunakan driver berbasis DBMS atau berbasis file.

Driver berbasis DBMS biasanya memerlukan serangkaian informasi koneksi yang kompleks, seperti alamat jaringan, protokol jaringan, nama database, dan sebagainya. Tujuan sumber data adalah untuk menyembunyikan semua informasi ini. Oleh karena itu, paradigma sumber data meminjamkan dirinya untuk digunakan dengan driver berbasis DBMS. Aplikasi dapat menampilkan daftar sumber data kepada pengguna dengan salah satu dari dua cara. Ini dapat memanggil SQLDriver Koneksi dengan kata kunci DSN (Nama Sumber Data) dan tanpa nilai terkait; Manajer Driver akan menampilkan daftar nama sumber data. Jika aplikasi ingin mengontrol tampilan daftar, aplikasi memanggil SQLDataSources untuk mengambil daftar sumber data yang tersedia dan membuat kotak dialognya sendiri. Fungsi ini diimplementasikan oleh Driver Manager dan dapat dipanggil sebelum driver dimuat. Aplikasi kemudian memanggil fungsi koneksi dan meneruskannya nama sumber data yang dipilih.

Jika sumber data tidak ditentukan, sumber data default yang ditunjukkan oleh informasi sistem digunakan. (Untuk informasi selengkapnya, lihat Subkunjuk Default.) Jika SQL Koneksi dipanggil dengan menggunakan argumen ServerName yang tidak dapat ditemukan, adalah penunjuk null, atau "DEFAULT", Manajer Driver tersambung ke sumber data default. Sumber data default juga digunakan jika string koneksi yang digunakan dalam panggilan ke SQLDriver Koneksi atau SQLBrowse Koneksi berisi kata kunci DSN yang diatur ke "DEFAULT" atau jika sumber data yang ditentukan tidak ditemukan. Selain itu, sumber data default digunakan jika string koneksi yang digunakan dalam panggilan ke SQLDriver Koneksi tidak berisi kata kunci DSN.

Dengan driver berbasis file, dimungkinkan untuk menggunakan paradigma file. Untuk data yang disimpan di komputer lokal, pengguna sering mengetahui bahwa data mereka berada dalam file tertentu, seperti Employee.dbf. Alih-alih memilih sumber data yang tidak diketahui, lebih mudah bagi pengguna tersebut untuk memilih file yang mereka ketahui. Untuk menerapkan ini, aplikasi pertama-tama memanggil SQLDrivers. Fungsi ini diimplementasikan oleh Driver Manager dan dapat dipanggil sebelum driver dimuat. SQLDrivers mengembalikan daftar driver yang tersedia; juga mengembalikan nilai untuk kata kunci FileUsage dan FileExtns . Kata kunci FileUsage menjelaskan apakah driver berbasis file memperlakukan file sebagai tabel, seperti halnya Xbase, atau sebagai database, seperti halnya Microsoft Access. Kata kunci FileExtns mencantumkan ekstensi nama file yang dikenal driver, seperti .dbf untuk driver Xbase. Dengan menggunakan informasi ini, aplikasi membuat kotak dialog tempat pengguna memilih file. Berdasarkan ekstensi file yang dipilih, aplikasi kemudian terhubung ke driver dengan memanggil SQLDriver Koneksi dengan kata kunci DRIVER.

Tidak ada yang menghentikan aplikasi menggunakan sumber data dengan driver berbasis file atau memanggil SQLDriver Koneksi dengan kata kunci DRIVER untuk menyambungkan ke driver berbasis DBMS. Berikut adalah beberapa penggunaan umum kata kunci DRIVER untuk driver berbasis DBMS:

  • Tidak membuat sumber data. Misalnya, aplikasi kustom mungkin menggunakan driver dan database tertentu. Jika nama driver dan semua informasi yang diperlukan untuk terhubung ke database dikodekan secara permanen dalam aplikasi, pengguna tidak perlu membuat sumber data di komputer mereka untuk menjalankan aplikasi. Yang harus mereka lakukan adalah menginstal aplikasi dan driver.

    Kerugian dari metode ini adalah bahwa aplikasi harus dikompresi ulang dan didistribusikan ulang jika informasi koneksi berubah. Jika nama sumber data dikodekan secara permanen dalam aplikasi alih-alih informasi koneksi lengkap, setiap pengguna hanya boleh mengubah informasi di sumber data.

  • Mengakses DBMS tertentu satu kali. Misalnya, spreadsheet yang mengambil data dengan memanggil fungsi ODBC mungkin berisi kata kunci DRIVER untuk mengidentifikasi driver tertentu. Karena nama driver bermakna bagi setiap pengguna yang memiliki driver tersebut, spreadsheet dapat diteruskan di antara pengguna tersebut. Jika spreadsheet berisi nama sumber data, setiap pengguna harus membuat sumber data yang sama untuk menggunakan spreadsheet.

  • Menelusuri sistem untuk semua database yang dapat diakses oleh driver tertentu. Untuk informasi selengkapnya, lihat Koneksi dengan SQLBrowse Koneksi, nanti di bagian ini.