Oracle连接问题

时间:2009-03-17 18:12:59

标签: visual-studio oracle configuration

我最近有一台新机正在运行,从XP 32 Bits转移到Vista 64 Bits。

无论我做什么,我都无法将我的.Net项目连接到oracle服务器......我可以使用oracle sqldeveloper连接到数据库,但不能从我的项目中连接...

我收到此错误(令我感到困惑的是......)

“建立与服务器的连接时发生错误。连接到SQL Server时,此错误可能是由于在默认设置下SQL Server不允许远程连接这一事实。(提供程序:SQL网络接口,错误:26 - 找到指定的服务器/实例时出错“”

我的第一个WTF是“SQL Server”部分,因为我的整个项目保持不变,我根本不使用SQL Server(在这个项目中)......

我的连接字符串如下:

<add name="DefaultDb" providerName="System.Data.OracleClient" connectionString="Data Source=ora11dev;User Id=user;Password=pass;Integrated Security=no;"/>

我已经为.net重新安装了oracle客户端和oracle连接工具,但我的问题仍然存在......

任何人都可以指出我可能遗失的东西吗?

编辑:

当我打开连接时出现此错误: ORA-12154:TNS:无法解析指定的连接标识符

我的tnsnames.ora正确...

3 个答案:

答案 0 :(得分:4)

尝试将环境变量TNS_ADMIN设置为指向tnsnames.ora文件所在的目录。这将告诉您,如果您的客户端找到正确的Ora网络文件有问题。

编辑: visual studio的路径名是什么?是否有parens,例如“C:\ Program Files(x86)\ Microsoft Visual Studio \”?如果是这样,则会出现此方案中已知的已知错误。修复程序是安装修补程序,或者在路径中没有parens的位置重新安装Visual Studio。

答案 1 :(得分:2)

我会确定:

  1. 您可以调整数据库实例
  2. 您可以使用SQL * Plus登录
  3. 然后我会确保您为所有Oracle工具(客户端和ODAC)使用64位客户端。最后,如果您有多个Oracle Homes,请确保安装的最后一个配置为允许连接。我相信,ODAC使用上次安装的Oracle Home来获取其配置数据。

    另外,我听说11g客户端连接到10g实例有问题,但我个人从未见过这样的问题。

    我的猜测是Visual Studio中正在做某事的配置设置,或者某些防火墙规则不允许Visual Studio进行通信。但这些只是疯狂的猜测。

    底线是,如果#1和#2成功,很可能是在Visual Studio设置中。

答案 2 :(得分:0)

我想我刚刚发现了我的问题......

看起来oracle在使用oracle的应用程序路径中的括号有问题...这解释了为什么Visual Studio不会访问Oracle:“C:\ Program Files (x86) \ Visual Studio。 ..“

http://tiredblogger.wordpress.com/2007/11/21/oracle-data-access-components-odac-with-64-bit-development/

http://social.msdn.microsoft.com/forums/en-US/sqlintegrationservices/thread/ab662d63-6385-4f73-b27f-d526048f601f/