【发布时间】:2009-06-30 13:53:48
【问题描述】:
我有一个使用 System.Data.OracleClient 访问 oracle 数据库的 C# 程序。
代码使用 OracleCommand、OracleDataReader 对象。它使用 TNS 名称来引用特定的 oracle 服务器(在 tnsnames.ora 文件中定义)。
它在我的电脑上运行良好。然后我将二进制文件复制到另一台计算机,运行时遇到错误:
TNS:无法解析指定的连接标识符。
另一台计算机安装了相同版本的 oracle 客户端,并且 tnsnames.ora 的相同副本放在 oracle network/admin 文件夹中。另一台计算机也安装了 SQLDeveloper,我可以使用其 SQLDeveloper 中的这些 TNS 名称连接到 Oracle 服务器。
为什么c#程序抱怨无法解析TNS标识符?
我使用的连接字符串(硬编码到我的 c# 程序中)是 ;
"数据源=TNS 名称;用户 ID=user;密码=pass;"
谢谢
【问题讨论】:
-
我知道这并不能回答您的问题,但作为仅供参考,System.Data.OracleClient 已被弃用。 blogs.msdn.com/adonet/archive/2009/06/15/…