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 , par Hinault Romaric

0PARTAGES

0  0 
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

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Franck SORIANO
Expert confirmé https://www.developpez.com
Le 26/09/2011 à 21:00
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)
Non, tu mélanges plusieurs choses :
- 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.
2  0 
Avatar de _skip
Expert éminent https://www.developpez.com
Le 05/09/2011 à 19:19
Citation Envoyé par Hinault Romaric Voir le message

Que pensez-vous de ce choix de Microsoft ?
Je 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).
1  0 
Avatar de Philippe Robert
Membre actif https://www.developpez.com
Le 07/09/2011 à 16:13
Citation Envoyé par Ptit_Dje Voir le message
Ca risque d'impacter pas mal de packages SSIS par contre!
Si SSIS existe encore lorsque OLEDB sera abandonné. Comme ce fut le cas avec l'abandon de DTS, il faudra tout réécrire !
1  0 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
Expert confirmé https://www.developpez.com
Le 07/09/2011 à 17:29
Citation Envoyé par kisitomomotene Voir le message
M$ et ces mil et une techno qu'il crée et qu'il abandonne (vb, asp, com qui ont été abandonnés..). Il donne l'impression de ne pas avoir de vision à long terme, et de faire du bricolage juste pour du fric
Merci pour cette subtile démonstration.
1  0 
Avatar de Jinroh77
Membre chevronné https://www.developpez.com
Le 14/09/2011 à 11:38
les lots DTS ont toujours été exécutables depuis un SQL Server 2005. Voir ici.
1  0 
Avatar de Glouferu
Membre régulier https://www.developpez.com
Le 22/09/2011 à 17:01
Je 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 !
1  0 
Avatar de CAML
Membre averti https://www.developpez.com
Le 06/09/2011 à 8:57
via le .net Microsoft recommandait de passer par l'OLEDB et maintenant il l'abandonne. Faudrait savoir quoi
0  0 
Avatar de _skip
Expert éminent https://www.developpez.com
Le 06/09/2011 à 9:46
Citation Envoyé par CAML Voir le message
via le .net Microsoft recommandait de passer par l'OLEDB et maintenant il l'abandonne. Faudrait savoir quoi
Ado.net plutôt non?
0  0 
Avatar de Freem
Membre émérite https://www.developpez.com
Le 06/09/2011 à 14:39
Citation Envoyé par wikipedia

OLE DB (parfois orthographié OLEDB ou OLE-DB) est une API développée par Microsoft permettant l'accès aux données.

OLE DB se sert d'interfaces COM (Component Object Model)1. Il a été conçu dans le but de remplacer ODBC, de ce fait il permet l'accès à des bases de données exotiques ou des sources de données qui n'utilisent pas un processeur de requêtes SQL.

OLE DB fait partie du framework MDAC.
Il faut dire que je n'entend parler que rarement de SGBDR n'utilisant le SQL, et que ODBC est plutôt très populaire, dans le genre.
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.
0  0 
Avatar de Philippe Robert
Membre actif https://www.developpez.com
Le 06/09/2011 à 15:26
Etonnant !

J'ai toujours préféré utiliser OLEDB car plus performant qu'ODBC.
Qu'en est-il de SQL Native Client ?
0  0 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web