Differenza tra ODBC e OLEDB

Differenza tra ODBC e OLEDB
Differenza tra ODBC e OLEDB

Video: Differenza tra ODBC e OLEDB

Video: Differenza tra ODBC e OLEDB
Video: Conoscere l'animale: IL CERVO 2024, Luglio
Anonim

ODBC vs OLEDB

In genere, le applicazioni software sono scritte in un linguaggio di programmazione specifico (come Java, C, ecc.), mentre i database accettano query in un altro linguaggio specifico del database (come SQL). Pertanto, quando un'applicazione software deve accedere ai dati in un database, è necessaria un'interfaccia in grado di tradurre le lingue tra loro (applicazione e database). In caso contrario, i programmatori di applicazioni devono apprendere e incorporare linguaggi specifici del database all'interno delle loro applicazioni. ODBC (Open Database Connectivity) e OLEDB (Object Linking and Embedding, Database) sono due interfacce che risolvono questo specifico problema. ODBC è un'interfaccia indipendente dalla piattaforma, dalla lingua e dal sistema operativo che può essere utilizzata per questo scopo. OLEDB è il successore di ODBC.

Cos'è ODBC?

ODBC è un'interfaccia per accedere ai sistemi di gestione dei database (DBMS). ODBC è stato sviluppato da SQL Access Group nel 1992 in un momento in cui non esisteva un mezzo standard per comunicare tra un database e un'applicazione. Non dipende da un linguaggio di programmazione specifico, da un sistema di database o da un sistema operativo. I programmatori possono utilizzare l'interfaccia ODBC per scrivere applicazioni in grado di eseguire query sui dati da qualsiasi database, indipendentemente dall'ambiente in cui è in esecuzione o dal tipo di DBMS utilizzato.

Poiché il driver ODBC funge da traduttore tra l'applicazione e il database, ODBC è in grado di ottenere l'indipendenza dalla lingua e dalla piattaforma. Ciò significa che l'applicazione è sollevata dall'onere di conoscere la lingua specifica del database. Invece conoscerà e utilizzerà solo la sintassi ODBS e il driver tradurrà la query nel database in una lingua che può comprendere. Quindi, i risultati vengono restituiti in un formato che può essere compreso dall'applicazione. L'API del software ODBC può essere utilizzata con sistemi di database sia relazionali che non relazionali. Un altro grande vantaggio dell'avere ODBC come middleware universale tra un'applicazione e un database è che ogni volta che le specifiche del database cambiano, non è necessario aggiornare il software. Sarebbe sufficiente solo un aggiornamento del driver ODBC.

Cos'è OLEDB?

OLEDB è un'API di dati sviluppata da Microsoft. Consente di accedere ai dati da un'ampia gamma di origini dati. È implementato utilizzando la COM (Component Object Mode) di Microsoft. OLEDB è considerato un successore di ODBC e può gestire origini dati a un livello molto più elevato rispetto a ODBC. In sostanza, OLEDB estende le funzionalità ODBC a database non relazionali (ad es. database di oggetti e fogli di calcolo). Ciò significa che OLEDB può essere utilizzato con database che non utilizzano SQL. OLEDB è stato sviluppato come parte di Microsoft Data Access Components (MDAC).

Qual è la differenza tra ODBC e OLEDB?

Se il programmatore non ha familiarità con COM, allora ODBC è l'opzione migliore. Tuttavia, ODBC è valido solo per database relazionali, mentre OLEDB è adatto sia per database relazionali che non relazionali. Se il database non supporta OLE (ambienti non OLE), ODBC è la scelta migliore. Se l'ambiente non è SQL, è necessario utilizzare OLEDB (perché ODBC funziona solo con SQL). Allo stesso modo, se sono necessari componenti di database interoperabili, è necessario utilizzare OLEDB anziché ODBC. Tuttavia, per i dati a 16 bit, l'accesso a ODBC è l'unica opzione (OLEDB non supporta 16 bit). Infine, OLEDB è la scelta migliore per la connessione a più database contemporaneamente (ODBC può connettersi a un solo database alla volta).

Consigliato: