Differenza tra OLEDB e ODBC Differenza tra

Anonim

ODBC vs OLEDB

Se sai cosa sono, probabilmente sei uno sviluppatore. Se non sai cosa sono, ma vuoi sapere - probabilmente sei un futuro sviluppatore.

A causa della natura tecnica di questo confronto, ho incluso un glossario di termini alla fine dell'articolo. Se sei nuovo a questo genere di cose, puoi prima dare un'occhiata a questo.

Diamo un'occhiata a questi termini, per cosa sono utilizzati e quale raccomando.

Definizione dei termini

Architettura driver ODBC

ODBC è l'abbreviazione di Open Database Connecting. È uno standard di interfaccia, progettato per la comunicazione tra diverse app e sistemi operativi (SO).

Come, ad esempio, se hai usato un programma scritto per Linux, ma volevi che io lavorassi anche in (OS). La tua risposta sarebbe una API come ODBC.

In passato, i programmi venivano riscritti interamente per sistemi operativi nuovi o diversi. Il processo era inefficiente.

ODBC è apparso nel 1992 per risolvere questo problema.

ODBC è stato originariamente creato per Structured Query Language (SQL). Da allora si è espanso per gestire più linguaggi di programmazione.

OLE BD è l'abbreviazione di Object Linking and Embedding Database. Questo è un gruppo di API progettato per fornire accesso ai dati delle app in diversi formati di file. Questo includeva funzionalità SQL (come ODBC) e molti altri linguaggi.

OLE BD è stato impostato per avere successo in ODBC, ma le cose sono cambiate …

ODBC vs. OLEDB

ODBC inizialmente era focalizzato su SQL e, se stai usando SQL, ha senso vai con ODBC. L'ovvia scelta era OLEDB. Ma come scoprirai più avanti nell'articolo, l'ultima versione SQL a supporto di OLEDB è stata lanciata nel 2012. E sta scomparendo rapidamente.

Questo cambio di strategia da parte di Microsoft ha preso un po 'di sorpresa. Molti utenti testardi si sono aggrappati a ODBC per così tanto tempo, quindi la mossa aveva senso. Inoltre, c'era il fatto che ODBC si stava espandendo.

Per quanto riguarda la differenza tra questi due, è molto difficile dirlo senza diventare molto tecnico.

Al centro sono diverse API per diverse origini dati.

Un parere è che ODBC è più specifico e al punto, dove OLEDB è eccessivamente generico e troppo complicato.

Supporto corrente

Il lancio di SQL nel 2012 è stato l'ultimo a supportare OLEDB. Ciò rende il voto a favore di ODBC.

ODBC ha ampliato la sua compatibilità con l'uso dei driver, che è un importante fattore trainante nel cambio di strategia da parte di Microsoft.

Gli sviluppatori devono adattare

La summenzionata versione SQL (denali) ha sette anni di supporto per OLEDB. Ciò significa che mentre scrivo questo, gli sviluppatori hanno solo due anni per adattarsi.

Tutti capiscono che può essere difficile adattarsi, ma gli utenti OLEDB non avranno scelta molto presto.

Le differenze tra ODBC e OLEDB

Sopporta me, sta per diventare molto tecnico. Per facilità di lettura ho contenuto le informazioni in una tabella.

Questa tabella si basa sulle informazioni da un white paper tecnico di ftp. sas. com

ODBC OLEDB
Originariamente progettato per database relazionali. (dal cambiamento) Originariamente progettato per database non relazionali e relazionali.
Supporto in corso per SQL Supporto SQL non valido 2019
Basato su componenti Basato su procedure
Più difficile da implementare Più facile da implementare

Questo quasi lo riassume. Spero che tu abbia una migliore comprensione della differenza tra ODBC e OLEDB ora. Se non lo fai, ho fornito qualche ulteriore lettura qui sotto, oltre a un link al documento tecnico sopra menzionato.

Se hai esperienza nell'uso di queste due API, perché non farcelo sapere nei commenti? Abbiamo sbagliato qualcosa? C'è qualcosa che potresti aggiungere per i neofiti là fuori?

Ci piacerebbe sentirti nei commenti.

Glossario

ODBC: Open Database Connecting

OLE DB: Object Linking and Embedding Database

SO: Sistema operativo (come Windows)

API: Application Programming Interface

Database relazionale: Un set di elementi di dati ordinati in tabelle. Gli elementi di dati sono accessibili e riassemblati senza riorganizzare le tabelle del database.

Database non relazionale: non segue lo standard relazionale. Conosciuto anche come database NoSQL.

Ulteriori letture

Link a (obsoleto - vedi sopra, OLEDB sta perdendo funzionalità SQL) white paper: // ftp. sas. com / techsup / download / v8papers / odbcdb. pdf

Database relazionale vs. Non relazionale: // www. MongoDB. com / scale / database relazionale-vs-non-relazionale

Opinioni degli utenti su ODBC e OLEDB: // community. Qlik. com / thread / 106540 ​​