Domanda

I supporta attualmente un database MS Access che ha legato le connessioni utilizzando il driver ODBC di Microsoft per Oracle. Posso collegarmi le tabelle collegate attuali senza problemi, ma ci viene richiesto per motivi di sicurezza per cambiare la password dell'account accesso al server.

Ho cambiato la password con successo, ma ora quando tento di ricollegare le tabelle ottengo l'errore:

ODBC--call failed
Microsoft ODBC driver for ORacle ORA-12154: TNS could not resolve service name

Queste tabelle sono parte di un'applicazione critica e ora non siamo in grado di connettersi. Qualche suggerimento su come risolvere questo?

È stato utile?

Soluzione

L'errore ORA-12154 indica che si sta specificando un alias TNS che non sta risolvendo. Si sta utilizzando un DSN per la connessione a Oracle? In caso affermativo, qual è il TNS alias che stai specificando lì? Fa che alias esistono nel file tnsnames.ora? ci sono più file tnsnames.ora sul client?

Il file tnsnames.ora si trova sulla macchina client su cui è installato Access. Senza sapere che cosa è installata la versione del client Oracle, il modo più semplice per scoprire quali tnsnames.ora file è utilizzato è probabilmente quello di aprire un prompt e di tipo DOS "tnsping service_name" dove `service_name" è tutto ciò che alias TNS specificato nella il DSN. Si otterrà qualcosa del tipo

C:\Users\jcave>tnsping fuddy_duddy

TNS Ping Utility for 64-bit Windows: Version 11.2.0.1.0 - Production on 07-OCT-2
010 08:10:51

Copyright (c) 1997, 2010, Oracle.  All rights reserved.

Used parameter files:
C:\oracle\product\11.1.0\db_1\NETWORK\ADMIN\sqlnet.ora

TNS-03505: Failed to resolve name

La linea di "file di parametri usati" ti dice la directory in cui sono memorizzati i file relativi TNS. Ci dovrebbe essere un tnsnames.ora e un file sqlnet.ora in quella directory.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top