Microsoft abandonne OLE DB dans SQL Server
Denali sera la dernière version du SGBD à soutenir l'API d'accès aux données
Le 2011-09-05 14:51:47, par Hinault Romaric, Responsable .NET
Microsoft abandonne progressivement son interface de bas niveau pour l’accès aux données OLE DB (Object Linking and Embedding, Database) pour ODBC.
L’API Microsoft OLE DB avait été développée pour permettre l’accès à différentes sources de données, incluant celles n’utilisant pas un processeur de requête SQL. La technologie avait été conçue dans le but de remplacer ODBC (Open Database Connectity).
Cependant, ODBC c’est imposé au fil du temps comme le standard de facto utilisé actuellement dans l’industrie pour l’accès et la manipulation des données relationnelles au détriment d’OLE DB.
Dans son souci d’assurer l’interopérabilité entre ses produits et ses partenaires, Microsoft annonce donc la fin du support de la technologie OLE DB au sein de son moteur de base de données SQL Server en faveur d’ODBC.
La prochaine version du SGBD SQL Server, Denali (actuellement disponible en version CTP), sera donc la dernière à supporter l’API. OLE DB sera encore pris en charge 7 ans après la publication de la version finale de Denali.
Microsoft encourage les développeurs à utiliser dorénavant ODBC dans leurs projets futurs.
Cette orientation vers ODBC offrira également une plus grande clarté aux développeurs C/C++ qui pourront désormais concentrer leurs efforts uniquement sur une seule API.
La plate forme Cloud de Microsoft, SQL Azure, a déjà intégré ce virage vers ODBC.
Une décision qui suscite néanmoins plusieurs interrogations auprès des développeurs, car Microsoft avait présenté OLE DB comme un outil plus puissant qu’ODBC. De plus, OLE DB propose certaines fonctionnalités (qui ont été utilisées par des développeurs) et qui ne sont pas disponibles avec ODBC.
Il est vrai que ces développeurs auront encore quelques années pour négocier cette transition.
Et vous ?
Que pensez-vous de ce choix de Microsoft ?
Source : Blog SQL Server
L’API Microsoft OLE DB avait été développée pour permettre l’accès à différentes sources de données, incluant celles n’utilisant pas un processeur de requête SQL. La technologie avait été conçue dans le but de remplacer ODBC (Open Database Connectity).
Cependant, ODBC c’est imposé au fil du temps comme le standard de facto utilisé actuellement dans l’industrie pour l’accès et la manipulation des données relationnelles au détriment d’OLE DB.
Dans son souci d’assurer l’interopérabilité entre ses produits et ses partenaires, Microsoft annonce donc la fin du support de la technologie OLE DB au sein de son moteur de base de données SQL Server en faveur d’ODBC.
La prochaine version du SGBD SQL Server, Denali (actuellement disponible en version CTP), sera donc la dernière à supporter l’API. OLE DB sera encore pris en charge 7 ans après la publication de la version finale de Denali.
Microsoft encourage les développeurs à utiliser dorénavant ODBC dans leurs projets futurs.
Cette orientation vers ODBC offrira également une plus grande clarté aux développeurs C/C++ qui pourront désormais concentrer leurs efforts uniquement sur une seule API.
La plate forme Cloud de Microsoft, SQL Azure, a déjà intégré ce virage vers ODBC.
Une décision qui suscite néanmoins plusieurs interrogations auprès des développeurs, car Microsoft avait présenté OLE DB comme un outil plus puissant qu’ODBC. De plus, OLE DB propose certaines fonctionnalités (qui ont été utilisées par des développeurs) et qui ne sont pas disponibles avec ODBC.
Il est vrai que ces développeurs auront encore quelques années pour négocier cette transition.
Et vous ?
Source : Blog SQL Server
-
Franck SORIANOExpert confirméDésolé, je ne vois pas de quoi tu parles !
Dans la référence que tu cites :
- La première chaines de connexion utilse le connecteur .Net Db2.
- La deuxième utilise le provider OLEDB de Microsoft pour DB2.
- La troisième utilise le provider OLEDB d'IBM pour DB2.
- La quatrième utilise le connecteur OLEDB de .Net.
- La cinquième est de l'ODBC direct. Mais il ne s'agit pas d'ADO pour autant.
- La dernière est le connecteur OBDC de .Net
Je vois nulle part de l'ADO faisant de l'ODBC...
utilisées par MDAC (qui a été renommé ADO, pour je ne sais quelle raison)
- ADO (Microsoft ActiveX Data Object) est une technologie permettant d'accéder à une source de données OLEDB. C'est une librairie d'objets COM dont le but est de simplifier l'utilisation de OLEDB.
- MDAC (Microsoft Data Access Components) : C'est un package de déploiement qui contient un certain nombre de drivers et technologies pour se connecter à quelques grands SGBD. MDAC contient ADO, les providers OLEDB Microsoft pour SQL Server, Oracle, Access et la passerelle ODBC. Il contient également les drivers ODBC Microsoft pour les mêmes SGBD.
Donc oui, tu peux te connecter en ODBC directement à certain SGBDs en installant MDAC, mais ce n'est pas de l'ADO pour autant.le 26/09/2011 à 21:00 -
_skipExpert éminentJe vais peut être passer pour un troll (j'espère pas), mais il me semble que très peu de SGBD non microsoft proposaient une couche OLEdb réellement efficace et aboutie. Je pense que personne depuis plusieurs années n'a commencé un développement en se basant sur de l'OLEdb, sauf peut être les utilisateurs de certains RAD comme windev qui profitaient des fonctionnalités supplémentaires par rapport à ODBC (récupération de metadata notamment).le 05/09/2011 à 19:19
-
Philippe RobertMembre actifSi SSIS existe encore lorsque OLEDB sera abandonné. Comme ce fut le cas avec l'abandon de DTS, il faudra tout réécrire !le 07/09/2011 à 16:13
-
le 07/09/2011 à 17:29
-
Jinroh77Membre chevronnéles lots DTS ont toujours été exécutables depuis un SQL Server 2005. Voir ici.le 14/09/2011 à 11:38
-
GlouferuMembre régulierJe trouve aussi qu'ils se foutent bien de notre gueule ... Apparemment la politique de Microsoft aujourd'hui est d'annoncé les futurs changement. Si il y a trop de mécontent, op ils annulent leur propal.
La suite donc au prochain épisode !le 22/09/2011 à 17:01 -
CAMLMembre avertivia le .net Microsoft recommandait de passer par l'OLEDB et maintenant il l'abandonne. Faudrait savoir quoile 06/09/2011 à 8:57
-
_skipExpert éminentle 06/09/2011 à 9:46
-
FreemMembre émérite
Envoyé par wikipedia
Je doute que l'usage d'OLE DB soit très répandu, et je pense que ms l'a compris, et que c'est pour ça qu'ils lâchent l'affaire.
Sinon, c'est quoi la différence entre ODBC et OLE-DB?
Meilleure performance? Ca ne me semble pas a l'ordre du jour...
Plus simple à utiliser? Plus bas niveau, donc j'en doute, et l'époque est moins à l'optimisation du code que celle du temp.
Plus aisément portable? J'en doute.
Alors pourquoi utiliser cette techno?
PS: ce sont de vraies questions, donc si on me met un down, je veux bien qu'on m'explique pourquoi.le 06/09/2011 à 14:39 -
Philippe RobertMembre actifEtonnant !
J'ai toujours préféré utiliser OLEDB car plus performant qu'ODBC.
Qu'en est-il de SQL Native Client ?le 06/09/2011 à 15:26