Un mini article pour me rappeler quand j’en ai besoin de la syntaxe de création d’un serveur lié vers oracle ainsi que la syntaxe du TNS.
Ce qu’il faut retenir, c’est que seuls les champs suivants sont obligatoires:
- Linked server: Le nom de mon serveur lié, celui que je devrai spécifier dans mes requêtes
SELECT * FROM MYLINKEDSERVER.dbo.toto
- Data Source : L’alias de votre serveur oracle que vous retrouverez dans votre TNS
Il faut maintenant configurer les informations relatives à la connexion. Ici en mode compte SQL.
Pour que cela fonctionne il faut :
- Avoir le driver Oracle installé sur le serveur (vous pouvez le trouver ici)
- Renseigner le fichier tnsnames.ora disponible dans le dossier d’installation du driver oracle chez moi C:\Oracle\product\12.1.0\client_1\Network\Admin\tnsnames.ora
Avec un enregistrement du type :TEMCLN = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = monserveur.fr.kikoo.corp)(PORT = 1522)) ) (CONNECT_DATA = (SERVICE_NAME = TEMCLN) ) )
9 Comments
[…] faire suite à l’article Créer un server lié vers Oracle […]
[…] faire suite à l’article Créer un server lié vers Oracle […]
Bonjour ,
je souhaiterai faire la même chose .
mais je n’ai pas oracle provider dans les choix disponible .
Du coup j’ai réussi à créer un lien ODBC sur ma base oracle (test de connexion ok )
Pour autant je n’arrive pas à faire ma connexion avec sql serveur 2014
Bonjour,
Si vous en trouvez pas Oracle Provider dans les choix disponibles, c’est que le driver OLEDB pour oracle n’est pas installé sur le serveur SQL (Je vous recommande donc de l’installer).
Les serveurs liés ne supportent malheureusement pas nativement l’ODBC, il est toutefois possible (mais non recommandé) d’utiliser le driver « Microsoft OLE DB Provider for ODBC » afin de pouvoir effectuer cette connexion.
d’accord . J’ai les drivers mais je ne peux toujours pas me connecter .
J’ai l’impression que le tnsname n’est pas pris en compte et le tnsping ne fonctionne pas.
Pourriez-vous mettre à jour ou me donner le lien pour avoir le driver Oracle installé sur votre serveur. Le lien dans le tuto est mort .
merci d’avance
Autant pour moi j’avais une erreur dans le registre [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\MTxOCI].
Mon serveur est bien lié mais je ne peux pas attaquer ma base ou alors je ne connais pas la syntaxe pour.
Merci
Lorsque vous faites un clique droit sur le serveur lié, tester la connexion, cela fonctionne ?
Bonjour,
J’ai un serveur lié qui fonctionnait depuis 2 ans grâce à votre tutoriel.
Cependant, une mise à jour de notre logiciel métier a été effectué (ne modifiant pas la version de Oracle selon mon service informatique) et depuis ce jour… plus rien ne fonctionne.
La connexion est toujours active mais quand je souhaite l’import j’ai ce message :
Le fournisseur OLE DB « OraOLEDB.Oracle » du serveur lié « XXX » a fourni des métadonnées incohérentes pour une colonne. La colonne « ZZZ » (nombre ordinal au moment de la compilation 3) de l’objet « SELECT * FROM PPP » a été signalé comme ayant « DBTYPE » égal à 129 au moment de la compilation et égal à 130 au moment de l’exécution.
Si vous avez une piste je suis preneur car là j’ai plus de solutions.
Merci par avance.
Bonjour,
Arrivez-vous à lancer cette requête directement sur Oracle ?
Est-ce que celle-ci pointe vers une vue ?