1
  • 安装了 InstantCLient 11.2.0.4 Basic Lite 和 ODBC 包
  • 设置 ORACLE_HOME 和 TNS_ADMIN 环境变量,并将安装路径添加到 Path 环境变量中
  • 在该位置创建了我的 tnsnames.ora 文件
  • 使用文件中的 TNS 设置我的 DSN 并进行测试连接 - 成功。
  • 使用我之前开发的 C# 代码,它使用 DbProviderFactoies 通用方法连接到数据提供程序(已经与 Teradata、SQL Server 一起使用)
  • 使用以下 connectionString 创建了我的数据源配置:
    <?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="DataSource" connectionString="DRIVER={Oracle in instantclient_11_2};Data Source=Test Oracle;Persist Security Info=True;Password=password;User=user" providerName="System.Data.OracleClient"/> </connectionStrings> </configuration>
  • 导致“ORA-12560:TNS:协议适配器错误”。
  • 我在连接字符串上尝试了许多变体,它们都导致某种错误。任何帮助都感激不尽。

系统信息

  • 视窗服务器 2003 64 位
  • C# .NET 3.5
  • Oracle 11g 11.2.0.3.0 远程数据库
4

2 回答 2

1

我不确定出了什么问题,但我发现下面非常简单的连接字符串有效!它也使用通用的 System.Data.Odbc。

<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="DataSource" connectionString="DSN=MyDSN;Uid=user;Pwd=password" providerName="System.Data.Odbc"/> </connectionStrings> </configuration>

于 2014-05-31T21:49:19.490 回答
0

这取决于您用于连接的协议:TCPTCPS.
如果TCPS,那么.NET Framework版本应该在4.5 以上。如果版本低于3.5
, 你会得到“ ”。ORA-12560: TNS:protocol adapter error.NET Framework

于 2018-01-02T10:42:02.070 回答