2009-10-09 6 views
1

J'ai trouvé:SQL Server 2008 serveur lié à Oracle 9i

How do you setup a linked server to an Oracle database on SQL 2000/2005?

Le DSN testé avec succès, mais après avoir utilisé les procédures stockées décrites dans l'article pour créer le serveur lié à la « requête ouverte » retourné les éléments suivants message:

Le fournisseur OLE DB "MSDASQL" pour le serveur lié "XXX" a renvoyé le message "Le pilote spécifié n'a pas pu être chargé en raison de l'erreur système 1114 (Oracle dans instantclient11_1).".

Quelque chose doit faire différemment sur MSSQL 2008? J'ai réussi avec MSSQL 2000.

J'ai essayé d'utiliser le GUI pour créer le LS mais j'ai reçu l'erreur où il n'a pas pu obtenir le message d'erreur.

J'utilise 11_1 client instantanée sur Windows Server 2003.

Répondre

0

Vous ne devriez pas utiliser la MSDASQL en tant que fournisseur, vous devriez utiliser:

@provider=N'MSDAORA' 

ou

@provider=N'OraOLEDB.Oracle' 

Au moins, c'est ainsi que mon serveur lié Oracle est configuré sur tous les serveurs de bases de données que j'ai liés à Oracle. Certains ont le natif Oracle à partir de l'installation d'une configuration complète du client d'administration, d'autres ont un client léger. Je n'ai pas de configuration DSN dans ODBC sur aucun d'entre eux. Si vous pouvez TNSPING l'instance Oracle à partir de l'invite de commande sur le serveur, vous devriez pouvoir vous y connecter à partir de SQL avec un serveur lié.

0

J'ai eu cette erreur lorsque j'ai essayé d'installer les pilotes ODBC 32 bits et 64 bits. J'ai eu un sous-dossier séparé pour 32 bits et 64 bits sous le C: \ Oracle et j'ai placé les valeurs PATH et TNS_ADMIN à C: \ Oracle. Le problème est parti lorsque j'ai modifié le PATH et TNS_ADMIN pour utiliser le chemin 64 bits C: \ Oracle \ win64 \ instantclient_12_1.

Questions connexes