Diferencia entre OLEDB y ODBC

ODBC frente a OLEDB

Si sabe cuáles son, probablemente sea un desarrollador. Si no sabe qué son, pero quiere averiguarlo, probablemente sea un futuro desarrollador.

Debido a la naturaleza técnica de esta comparación, he incluido un glosario de términos al final del artículo. Si eres nuevo en este tipo, tal vez quieras echarle un vistazo primero.

Veamos estos términos, dónde se usan y cuál recomiendo.

Definición de términos

Controlador de arquitectura ODBC

ODBC es la abreviatura de Conectividad abierta de bases de datos. Es un estándar de interfaz, diseñado para la comunicación entre diferentes aplicaciones y sistemas operativos (SO).

Como, por ejemplo, si solías escribir un programa para Linux, pero querías que yo (SO) trabajara también. Su respuesta sería una API como ODBC.

En el pasado, los programas solían reescribirse por completo para un sistema operativo nuevo o diferente. El proceso fue ineficaz.

ODBC surgió en 1992 para resolver ese problema.

ODBC se creó originalmente para el lenguaje de consulta estructurado (SQL). Desde entonces, se ha ampliado para manejar más lenguajes de programación.

OLE BD es la abreviatura de Object Linked and Embedded Database. Este es un grupo de API diseñadas para brindar acceso a los datos de la aplicación en varios formatos de archivo. Esto incluía la capacidad de SQL (como ODBC) y muchos otros lenguajes.

OLE BD estaba configurado para suceder a ODBC, pero las cosas cambiaron…

ODBC frente a OLEDB

ODBC originalmente estaba destinado a SQL y, si usa SQL, tiene sentido optar por ODBC. La elección obvia utilizada fue OLEDB. Pero como descubrirá más adelante en el artículo, la última versión de SQL compatible con OLEDB se lanzó en 2012. Y se está eliminando rápidamente.

Descubre también la:  Diferencia entre Multimedia e Hipermedia

Este cambio de estrategia de Microsoft tomó a algunos desprevenidos. Muchos usuarios testarudos se quedaron con ODBC durante tanto tiempo, por lo que el movimiento tenía sentido. También estaba el hecho de que ODBC se estaba expandiendo.

En cuanto a la diferencia entre los dos, es muy difícil de decir sin ser demasiado técnico.

En esencia, son diferentes API para diferentes fuentes de datos.

Una opinión es que ODBC es más específico y va al grano, donde OLEDB es demasiado genérico y demasiado complejo.

Soporte actual

SQL 2012 fue la última versión compatible con OLEDB. Esto sesga el voto a favor de ODBC.

ODBC ha ampliado su compatibilidad con el uso de controladores, que es un factor clave en el cambio de estrategia de Microsoft.

Los desarrolladores deben adaptarse

La versión de SQL antes mencionada (denali) vino con siete años de soporte para OLEDB. Esto significa que, mientras escribo esto, a los desarrolladores solo les quedan dos años para adaptarse.

Todos entienden que puede ser difícil adaptarse, pero los usuarios de OLEDB pronto no tendrán otra opción.

Las diferencias entre ODBC y OLEDB

Ten paciencia conmigo, está a punto de volverse muy técnico. Para leerlo tengo la información en una tabla.

Esta tabla se basa en la información de un informe técnico de ftp.sas.com

ODBCOLE DB
Originalmente fue diseñado para bases de datos relacionales. (desde que cambió)Originalmente fue diseñado para bases de datos relacionales y no relacionales.
Soporte continuo para SQLSoporte de SQL nulo 2019
basado en componentesbasado en procedimientos
Más difícil de implementarMás fácil de implementar
Descubre también la:  Diferencia entre marketing de afiliados y dropshipping

Eso equivale a un resumen. Espero que ahora comprenda mejor la diferencia entre ODBC y OLEDB. Si no es así, he proporcionado más información a continuación, así como un enlace al documento técnico mencionado anteriormente.

Si tiene experiencia en el uso de estas dos API, ¿por qué no nos lo dice en los comentarios? ¿Nos equivocamos en algo? ¿Hay algo que podrías agregar para los novatos?

Nos encantaría saber de ti en los comentarios.

Glosario

ODBC: conexión de base de datos abierta

OLE DB: vinculación de bases de datos e incrustación de objetos

SO: Sistema operativo (como Windows)

API: interfaz de programación de aplicaciones

Base de datos relacional: una serie de elementos de datos organizados en tablas. Se puede acceder a los elementos de datos y volver a ensamblarlos sin reorganizar las tablas de la base de datos.

Base de datos no relacional: no sigue el estándar relacional. También conocida como base de datos NoSQL.

Otras lecturas

Enlace al documento técnico (obsoleto; consulte más arriba, OLEDB está perdiendo la funcionalidad de SQL): http://ftp.sas.com/techsup/download/v8papers/odbcdb.pdf

Base de datos relacional vs. https://www.mongodb.com/scale/relational-vs-non-relational-database

Opiniones de usuarios sobre ODBC vs. OLE DB: https://community.qlik.com/thread/106540

Wlip.es

Somos entusiastas de la tecnología, la ciencia y sus avances. Nuestra curiosidad nunca se sacia y por eso intentamos investigar y conocer cada día más cosas. Te traemos las diferencias más curiosas sobre conceptos, cosas y mucho más.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *