我们正在从过时的System.Data.OracleClient切换。我已经切换了ASP.NET 2.0代码中的所有引用,但是,当我尝试使用ODP.NET调用访问数据库服务器时,我得到ORA-12154: TNS: not not解析指定的连接标识符。当我在同一台机器上使用System.Data.OracleClient时,这是可行的。对这里哪里出了问题有什么建议吗?
发布于 2011-10-01 03:55:03
您可以完全避免对Tnsnames.ora的依赖,并使用格式为“独立”的连接字符串:
Data Source =(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID))); User Id =myUsername; Password =myPassword;顺便说一句,您可以在connectionstrings.com/oracle上快速、直观地列出所支持的连接字符串格式。
发布于 2011-10-01 03:56:04
听起来您的客户端安装没有正确设置您的TNS名称。如果您刚刚在这台机器上安装了ODP.NET,那么您可能刚刚安装了另一个Oracle客户端,并且还没有对其进行配置。
发布于 2011-10-11 03:48:42
从安装了OracleClient的Oracle主目录的/NETWORK/ADMIN目录中复制TNSNAMES.ORA,然后复制到安装了ODP.NET的新/NETWORK/ADMIN目录中。
http://www.oracle.com/technetwork/topics/dotnet/odt-faq-085407.html#ORA-12154:_TNS:could_not_resolve_the
克里斯蒂安·谢伊
甲骨文
https://stackoverflow.com/questions/7615330
复制相似问题