Oracle - connexion ODBC à l'aide de MS Access (erreur ORA-12154)
Je suis en train d'utiliser MS access pour vous connecter à une base de données Oracle.
J'obtiens toujours le message d'erreur suivant:
ORA-12154: TSN - n'a pas pu résoudre le connecter identifiant secified
Les Pilotes Oracle OracleClient10g pouvez vérifier que le serveur de base de données existe.
J'ai un article dans mon tsnnames.ora fichier qui ressemble à ça:
UBASEP10G =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = bxxx-xxx.yyyy.com)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = UBASE)
)
)
par mes tentatives pour obtenir cette erreur résout j'ai ajouté ceci à la sqlnet.ora fichier:
NOMS.DIRECTORY_PATH= (NOM D'HÔTE, ONAMES, TNSNAMES,LDAP,EZCONNECT)
Lors de l'utilisation de la Windows pilote ODBC de l'utilitaire de configuration, il demande la suite
informations suivantes
NOM DE SOURCE DE DONNÉES : MASOURCE NOM
TSN SERVICE DE NOM:UBASEP10G
USERID:MYUSERID
des suggestions ?????
Vous devez vous connecter pour publier un commentaire.
Je n'ai pas Accès, mais à l'aide d'Excel 2007, j'ai eu à faire ce qui suit:
Essayez de changer (CONNECT_DATA = (SERVICE_NAME = UBASE) ) à (CONNECT_DATA = (SID = UBASE) ) dans votre TNSNAMES.ora fichier.
ServiceName et SID ne sont pas nécessairement les mêmes et, par conséquent, ne sont pas toujours interchangeables.
Le paramètre SERVICENAME se réfère à une GLOBAL_DBNAME spécifié dans l'écouteur.ora fichier sur le serveur de base de données. C'est un alias pour une instance sur le serveur. Vous pouvez avoir plusieurs servicenames sur un serveur en se référant à la même SID. Le paramètre SID se réfère à une instance particulière sur ce serveur.
L'avantage d'utiliser le service sur le côté client, c'est que l'administrateur peut modifier le réel de l'instance référencée par un service de manière transparente pour les clients à l'aide de ce nom. Je peux avoir cela sur le serveur écoute.ora fichier:
Plus tard, je peux modifier la base de données référencée par commutation de l'auditeur.ora configuration:
et la personne la plus sage sur le côté client. Aucune modification n'a été nécessaire dans le tnsnames.ora fichiers sur les clients.
Pouvez vous connecter à la base de données en question via SQL*Plus? Faire cela à partir d'une autre machine avec une connexion de travail (ou le serveur de base de données elle-même) est très bien aussi.
Dans ce cas, exécutez ceci:
Dans votre TNSNAMES.ORA, utilisez l'une des valeurs qui y sont énumérés pour SERVICE_NAME.
En vous connexion ODBC, tout ce que vous aurez besoin est de définir le Nom du Service TNS pour le nom que vous avez utilisé ci-dessus, "UBASEP10G"
Revenons à un carré. Ouvrez une fenêtre de commande et de vous connecter à votre base de données:
sqlplus myuserid/monmotdepasse@UBASEP10G
Ne ce connect avec succès?
Puisque la réponse est non, est-il un moyen vous POUVEZ vous connecter avec succès à cette base de données? BQ est correct, votre problème est avec le service de UBASE. Vous devez déterminer quel est le port d'écoute sur le serveur considère que le nom de la base de données. Avez-vous accès au serveur? Pouvez-vous exécuter la commande "lsnrctl statut" sur le serveur? Cela vous indiquera les services qui sont enregistrés auprès de l'auditeur, et ressembler à quelque chose comme ceci:
Essayer tnsping et vos résultats.
Mauvais:
Bon: