Ini adalah kombinasi dari alasan Sejarah / Evolusi dan Kekuatan Pasar
Saat bekerja di Microsoft beberapa tahun yang lalu, jelas bahwa ada beberapa penawaran data berbeda dalam pengembangan. Masing-masing penawaran ditujukan pada pasar atau kasus penggunaan tertentu, misalnya:
Akses ditujukan untuk pengguna desktop yang nyaman dengan sistem pengindeksan kartu yang dapat membangun aplikasi menggunakan formulir dan laporan. SQL adalah tambahan alami. Ini semua menggunakan 'mesin database mesin lokal sendiri bernama' JET '. Akhirnya JET dikesampingkan - kata pada anggur anggur adalah bahwa kurangnya kontrol sumber (dapat diandalkan) berarti mereka telah kehilangan sebagian besar sumber.
FoxPro ditujukan untuk pengguna desktop yang menginginkan kecepatan dibandingkan data relasional.
SQL Server adalah sistem basis data 'besar' perusahaan / sisi server dengan semua skala / daya / ketersediaan, dll yang dibutuhkan perusahaan. IIRC, MS melisensikan versi Sybase 6 untuk membangun MSSQL.
Seiring waktu, beberapa batasan telah menjadi kabur - misalnya SQL Server dapat berjalan pada mesin desktop sekarang, tetapi kasus penggunaan tetap.
Jadi ini memberi kita 3 'ujung belakang' - produk basis data yang diproduksi oleh Microsoft.
Untuk menambah campuran, ada berbagai tingkat API pengembang yang disediakan untuk mendapatkan akses ke sistem ini:
Awalnya, API tidak banyak - Anda menulis kode di dalam aplikasi (FoxPro / Access). VBA adalah salah satu metode.
Microsoft menerapkan MS ODBC untuk terhubung ke sistem yang bersaing sehingga Windows dapat berbicara dengan database besar seperti Oracle, Sybase, dll. Excel adalah salah satu aplikasi terkemuka untuk mendapatkan alat ODBC - tarik data dari DB besar Anda, memanipulasi dan bagan produk / grafik, dll. Banyak vendor database akhirnya menerapkan ODBC untuk memungkinkan klien yang berbeda untuk terhubung, sehingga strategi ini berhasil .. sampai taraf tertentu - ODBC dapat dianggap mewakili penyebut umum terendah.
Tim yang berbeda mulai menghasilkan cara mereka sendiri untuk mengakses mesin basis data seperti DAO (Data Access Objects) untuk lokal dan RDO (Remote Data Objects) untuk jarak jauh, dapat diakses melalui VB, yang merupakan produk pengembang MS paling populer saat itu.
Upaya internal untuk merasionalisasi beragam API ini dan menyediakan API akses basis data tunggal / unified yang sangat fleksibel memberi kami OLEDB, tetapi sangat sulit untuk masuk (banyak template C ++).
OLEDB tidak dapat digunakan dari VB, jadi ADO dikembangkan menggunakan teknik ActiveX, sehingga menjadi dapat digunakan kembali oleh apa pun yang dapat melakukan COM / OLE / ActiveX, yang berarti Access, Excel, VB dan karenanya ASP menjadi berbasis-database.
Ketika kami pindah ke era .NET, ADO secara alami dipindahkan ke lingkungan .NET yang membawa berbagai manfaat.
Dengan munculnya LINQ, mekanisme akses database yang sebenarnya menjadi lebih sedikit masalah.
Peringatan - Saya meninggalkan beberapa waktu lalu sekarang, jadi ingatan saya agak kabur