- 已安装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:协议适配器错误">
- 我在连接字符串上尝试了许多变体,它们都会导致某种错误。任何帮助都将不胜感激
系统信息
- Windows Server 2003 64位
- C#。净3.5
- Oracle 11g 11.2.0.3.0远程数据库
我不确定出了什么问题,但我发现下面非常简单的连接字符串有效!它使用的是通用系统。数据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>
这取决于您用于连接的协议:TCP
或TCPS
如果TCPS
,则.NET Framework
版本应高于4.5。
如果.NET Framework
版本低于3.5,则会得到"ORA-12560: TNS:protocol adapter error
"。