0

赢 7 64 位 SP 1

从 .NET 程序中获取错误“ORA-12154:TNS:无法解析指定的连接标识符”。

我已经在我的机器上安装了 Oracle 11.2 32 位客户端。

使用 Visual Studio 2010,我包含来自 C:\oracle\Ora112\odp.net\bin\4\Oracle.DataAccess.dll 的参考。

使用连接字符串值:User Id=myid;Password=mypw;Data Source=DBNAME;pooling=false;Connection Timeout=45;

运行 TNSPING DBNAME 有效。它说它正在使用 C:\oracle\Ora112\network\ADMIN\sqlnet.ora。此文件设置为使用 ldap 而不是 tnsnames。

运行 sqlplus 有效。我可以使用 myid/dbinstance 进行连接

当所有这些其他事情都正常工作时,我想不出ODP.NET为什么会给出这个错误的任何原因。有任何想法吗?

4

1 回答 1

1

我不得不为不同的服务器处理不同的连接字符串。尝试按照以下方式建模的字符串:

DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=dbservername.company.com)(PORT=1542)))(CONNECT_DATA=(SID=your_sid_from_tnsnames.ora)(SERVER=DEDICATED)));USER ID=myid;Password=mypw
于 2012-10-25T15:49:45.137 回答