Perbezaan Antara OLEDB dan ODBC

ODBC vs OLEDB

Jika anda tahu apa itu, anda mungkin seorang pemaju. Jika anda tidak tahu apa itu, tetapi ingin tahu - anda mungkin seorang pembangun masa depan.

Oleh kerana sifat teknikal perbandingan ini, saya telah memasukkan istilah istilah di akhir artikel. Sekiranya anda baru dalam perkara seperti ini, anda mungkin mahu melihatnya terlebih dahulu.

Mari kita lihat istilah ini, apa yang mereka gunakan dan yang saya cadangkan.

Menentukan Terma

Arkib Pemandu ODBC

ODBC adalah pendek untuk Membuka Pangkalan Data Terbuka. Ia adalah standard antara muka yang direka untuk komunikasi antara aplikasi dan sistem operasi yang berbeza (OS).

Seperti, contohnya, jika anda menggunakan menulis program untuk Linux, tetapi anda mahu saya bekerja di dalam (OS) juga. Jawapan anda akan menjadi API seperti ODBC.

Dalam beberapa hari berlalu, program yang digunakan untuk ditulis semula sepenuhnya untuk OS baru atau berbeza. Prosesnya tidak cekap.

ODBC muncul pada tahun 1992 untuk menyelesaikan masalah itu.

ODBC pada asalnya dicipta untuk Bahasa Permintaan Berstruktur (SQL). Ia telah berkembang untuk menangani lebih banyak bahasa pengaturcaraan.

OLE BD adalah pendek untuk Pangkalan Data Menghubungkan dan Menyebarkan Objek. Ini adalah kumpulan API yang direka untuk memberikan akses kepada data aplikasi dalam format fail yang berbeza. Ini termasuk keupayaan SQL (seperti ODBC), dan banyak bahasa lain.

OLE BD telah ditetapkan untuk berjaya ODBC, tetapi perkara berubah ...

ODBC vs OLEDB

ODBC pada mulanya tertumpu pada SQL dan, jika anda menggunakan SQL, masuk akal untuk pergi dengan ODBC. Pilihan jelas digunakan untuk menjadi OLEDB. Tetapi seperti yang akan anda ketahui kemudian dalam artikel itu, siaran SQL yang lepas untuk menyokong OLEDB dilancarkan pada tahun 2012. Dan ia telah dihapuskan dengan pantas.

Perubahan dalam strategi ini oleh Microsoft mengambil beberapa pengawal. Banyak pengguna yang degil berpegang teguh kepada ODBC selama ini, jadi langkah itu masuk akal. Juga terdapat fakta bahawa ODBC sedang berkembang.

Bagi perbezaan di antara kedua-dua, sukar untuk mengatakan tanpa mendapat perhatian yang sangat teknikal.

Di teras mereka adalah API yang berbeza untuk sumber data yang berbeza.

Satu pendapat ialah ODBC adalah lebih khusus dan ke titik, di mana OLEDB terlalu generik dan terlalu rumit.

Sokongan Semasa

Pelancaran SQL 2012 adalah yang terakhir untuk menyokong OLEDB. Ini memenangi undi yang memihak kepada ODBC.

ODBC telah memperluaskan keserasiannya dengan penggunaan pemandu, yang merupakan faktor pemacu utama dalam perubahan strategi oleh Microsoft.

Pemaju perlu menyesuaikan

Pelepasan SQL di atas (denali) datang dengan sokongan selama tujuh tahun untuk OLEDB. Ini bermakna bahawa ketika saya menulis ini, pemaju hanya tinggal dua tahun untuk menyesuaikan diri.

Semua orang memahami bahawa ia sukar untuk menyesuaikan diri, tetapi pengguna OLEDB tidak akan mempunyai pilihan tidak lama lagi.

Perbezaan antara ODBC dan OLEDB

Bawa dengan saya, ia akan menjadi sangat teknikal. Untuk kemudahan bacaan saya mengandungi maklumat dalam jadual.

Jadual ini didasarkan pada maklumat oleh kertas putih teknikal dari ftp.sas.com

ODBC OLEDB
Asalnya direka untuk pangkalan data hubungan. (sejak diubah) Asalnya direka untuk pangkalan data bukan relasi dan hubungan.
Sokongan berterusan untuk SQL Sokongan SQL tidak sah 2019
Berasaskan komponen Prosedur berasaskan
Lebih sukar untuk digunakan Lebih mudah digunakan

Itu hanya kira-kira jumlah itu. Saya harap anda mempunyai lebih memahami perbezaan antara ODBC dan OLEDB sekarang. Jika tidak, saya telah menyediakan beberapa bacaan lanjut di bawah, serta pautan ke kertas teknikal yang disebutkan di atas.

Sekiranya anda mempunyai pengalaman menggunakan dua API ini, mengapa tidak memberitahu kami dalam ulasan? Adakah kita mendapat sesuatu yang salah? Adakah terdapat sesuatu yang boleh anda tambah untuk pemula di luar sana?

Kami ingin mendengar daripada anda dalam komen.

Glosari

ODBC: Membuka Pangkalan Data Terbuka

OLE DB: Objek Menghubungkan dan Embedding Database

OS: Sistem Operasi (seperti tingkap)

API: Antaramuka Pemrograman Aplikasi

Pangkalan data relasi: Satu set item data disusun ke dalam jadual. Item data boleh diakses dan disusun semula tanpa menyusun semula jadual pangkalan data.

Pangkalan Data Bukan Relasi: Tidak mengikuti standard hubungan. Juga dikenali sebagai pangkalan data NoSQL.

Bacaan lanjut

Pautan ke (ketinggalan zaman - lihat di atas, OLEDB kehilangan fungsi SQL) kertas putih: http://ftp.sas.com/techsup/download/v8papers/odbcdb.pdf

Relational vs. Non-relational database: https://www.mongodb.com/scale/relational-vs-non-relational-database

Pendapat pengguna mengenai ODBC vs OLEDB: https://community.qlik.com/thread/106540