Différence entre OLEDB et ODBC

Différence entre OLEDB et ODBC

ODBC vs OLEDB

Si vous savez ce qu'ils sont, vous êtes probablement un développeur. Si vous ne savez pas ce qu'ils sont, mais que vous voulez savoir - vous êtes probablement un futur développeur.

En raison de la nature technique de cette comparaison, j'ai inclus un glossaire de termes à la fin de l'article. Si vous êtes nouveau dans ce genre de choses, vous voudrez peut-être jeter un coup d'œil à cela en premier.

Jetons un coup d'œil à ces termes, à quoi ils sont utilisés et à lequel je recommande.

Définition des termes

Architecture du pilote ODBC

ODBC est court pour la connexion de la base de données ouverte. Il s'agit d'une norme d'interface, conçue pour la communication entre différentes applications et systèmes d'exploitation (OS).

Comme, par exemple, si vous avez utilisé un programme pour Linux, mais vous vouliez que je travaille aussi dans (OS). Votre réponse serait une API comme ODBC.

En temps passé, les programmes étaient entièrement réécrits pour le système d'exploitation neuf ou différent. Le processus était inefficace.

ODBC est apparu en 1992 pour résoudre ce problème.

ODBC a été créé à l'origine pour le langage de requête structuré (SQL). Il s'est depuis étendu pour gérer plus de langages de programmation.

Ole BD est court pour la base de données de liaison et d'intégration d'objets. Il s'agit d'un groupe d'API conçu pour fournir un accès aux données de l'application dans différents formats de fichiers. Cela comprenait la capacité SQL (comme ODBC) et de nombreuses autres langues.

Ole BD devait succéder à ODBC, mais les choses ont changé…

ODBC VS. Oledb

ODBC était initialement axé sur SQL et, si vous utilisez SQL, il est logique d'aller avec ODBC. Le choix évident était l'Oledb. Mais comme vous le découvrirez plus loin dans l'article, la dernière version de SQL pour soutenir OLEDB a été lancée en 2012. Et ça passe rapidement.

Ce changement de stratégie de Microsoft a pris un peu de garde. De nombreux utilisateurs obstinés s'accrochent à ODBC pendant si longtemps, donc la décision avait du sens. Il y avait aussi le fait que ODBC se développait.

Quant à la différence entre ces deux-là, il est très difficile de dire sans devenir très technique.

Au cœur, ce sont des API différentes pour différentes sources de données.

Une opinion est que l'ODBC est plus spécifique et précis, où OLEDB est trop générique et trop compliqué.

Assistance actuelle

Le lancement de SQL en 2012 a été le dernier à soutenir OLEDB. Cela biaise le vote en faveur de l'ODBC.

ODBC a élargi sa compatibilité avec l'utilisation des conducteurs, ce qui est un facteur de conduite majeur dans le changement de stratégie par Microsoft.

Les développeurs doivent s'adapter

La libération de SQL susmentionnée (Denali) est venue avec sept ans de soutien à OLEDB. Cela signifie que lorsque j'écris ceci, les développeurs n'ont que deux ans pour s'adapter.

Tout le monde comprend qu'il peut être difficile d'adapter, mais les utilisateurs d'OLEDB n'auront pas le choix très bientôt.

Les différences entre ODBC et OLEDB

Restez avec moi, c'est sur le point de devenir très technique. Pour faciliter la lecture, j'ai contenu les informations dans un tableau.

Ce tableau est basé sur des informations par un livre blanc technique de FTP.sas.com

ODBC Oledb
Conçu à l'origine pour les bases de données relationnelles. (depuis changé) Conçu à l'origine pour les bases de données non relationnelles et relationnelles.
Support continu pour SQL SQL Support void 2019
Composant basé sur les composants Procédural
Plus difficile à déployer Plus facile à déployer

Cela résume à peu près. J'espère que vous avez une meilleure compréhension de la différence entre ODBC et OLEDB maintenant. Si vous ne le faites pas, j'ai fourni une lecture plus approfondie ci-dessous, ainsi qu'un lien vers le document technique mentionné ci-dessus.

Si vous avez de l'expérience dans l'utilisation de ces deux API, pourquoi ne pas nous en informer dans les commentaires? Avons-nous eu quelque chose de mal? Y a-t-il quelque chose que vous pourriez ajouter pour les débutants?

Nous serions ravis de vous entendre dans les commentaires.

Glossaire

ODBC: ouvrir la connexion de la base de données

OLE DB: base de données de liaison et d'intégration d'objets

OS: Système d'exploitation (comme Windows)

API: interface de programmation d'application

Base de données relationnelle: un ensemble d'éléments de données triés en tables. Les éléments de données sont accessibles et remontés sans réorganiser les tables de base de données.

Base de données non relationnelle: ne suit pas la norme relationnelle. Également connu sous le nom de base de données NoSQL.

Dès la lecture

Lien vers (obsolète - voir ci-dessus, Oledb perd la fonctionnalité SQL) Livre blanc: http: // ftp.sas.com / techsup / download / v8papers / odbcdb.pdf

Relationnel vs. Base de données non relationnelle: https: // www.mongodb.com / échelle / relation relationnelle-non-relation-database

Opinions des utilisateurs sur ODBC vs. Oledb: Https: // Communauté.Qlik.com / thread / 106540