Connettersi a un database Oracle 10g con Microsoft ODBC per Oracle
Domanda
Sto cercando di connettersi a un database Oracle 10g utilizzando la funzione integrata in Microsoft ODBC per driver Oracle. Voglio usare una connessione dnsless, così prendo la mia stringa di connessione da www.connectionstrings.com .
Idealmente non avrò per impostare una voce DNS o di una voce di Oracle TNS, e posso sbagliarmi, ma ho pensato che il sopra lo farebbe per me. Sto ottenendo il seguente:
ERROR [NA000] [Microsoft][ODBC driver for Oracle][Oracle]ORA-12514:
TNS:listener does not currently know of service requested in connect
descriptor
ERROR [IM006] [Microsoft][ODBC Driver Manager]
Driver's SQLSetConnectAttr failed
ERROR [01000] [Microsoft][ODBC Driver Manager]
The driver doesn't support the version of ODBC behavior that the
application requested (see SQLSetEnvAttr)."
Per quanto posso dire in linea, altre persone hanno utilizzato il Microsoft ODBC per Oracle driver per connettersi a 10g, ma forse mi manca qualcosa. Sto collegamento da un'applicazione vb.net per la via.
Soluzione 2
Non sono sicuro di come kosher che è quello di rispondere alla tua domanda, ma ho trovato una stringa di connessione che è più quello che sto cercando:
"Driver={Microsoft ODBC for Oracle}; " & _
"CONNECTSTRING=(DESCRIPTION=" & _
"(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST=myserver)(PORT=1521))" & _
"(CONNECT_DATA=(SERVICE_NAME=servicename))); " & _
"uid=username;pwd=password;
Altri suggerimenti
Con 10g, è possibile utilizzare il href="http://www.orafaq.com/wiki/EZCONNECT" rel="noreferrer"> EZConnect funzione . Per connettersi a un'istanza Oracle denominata ORCL sul myServer server, la stringa di connessione sarebbe simile a questa:
Driver={Microsoft ODBC for Oracle};Server=myServer:1521/ORCL;Uid=myUsername;Pwd=myPassword;
È necessario aggiungere una voce nel file tnsnames.ora per il servizio a cui si desidera connettersi. In alternativa, si può andare a l'interfaccia GUI per quel file a
Start->Programs->Oracle->Configuration and Migration Tools->Net Configuration Assistant
e impostare la connessione Oracle lì. Poi, ODBC sarà in grado di risolvere il nome del servizio.