2011-04-18 39 views
3

我在Visual Studio 2010中创建了一个空的控制台应用程序,我试图通过服务器浏览器添加一个Oracle(10g XE)数据连接。我使用Oracle .NET ODP作为连接器,我得到以下错误:Oracle数据访问组件和Visual Studio连接问题

ORA-12560:TNS:协议适配器错误

我可以通过Web界面或控制台没有问题访问Oracle,但在VS中不断得到这个通用连接错误。我正在使用Oracle XE的默认安装并在本地运行它。

有关如何正确设置此设置的任何建议?我发现每个教程都了解这个连接成功了。因此,我正在努力寻找从哪里开始排除故障。我对VS2010很满意,但是对于Oracle用他们的数据库做事情的方式来说,这是新的。

编辑1 在排除故障时我发现这只发生在Oracle Data Provider for .NET中。使用用于Oracle的.NET Framework数据提供程序我能够成功连接。

编辑2 我清理了一切,再次安装11g XE和ODAC工具,并继续获得相同的消息。我意识到这个错误有点泛泛,如果有人认为它有帮助,我会很乐意发布更多信息。该数据库在本地运行,我无法想象什么样的“配置”的Express数据库会更需要...

编辑3 的ODAC工具将出现安装Oracle 11的“生产”版本而不是我首先安装的BETA版本。几乎看起来好像该工具正在安装另一个数据库?我似乎也有两个ORACLE_BASE位置和两个TNSNAMES,它们看起来是非常相似的文件夹层次结构。也许更直接的教程就是答案,Oracle的描述不是很清楚。

回答

2

的Oracle 10g XE似乎是问题。完全安装11g(完整,不是Express)完全解决了这个问题。

0

here

Possible fixes for the TNS-12560 include:

  1. Get the latest patches for the SQL*Net client software.

  2. Check your $ORACLE_HOME and $Path variables.

  3. Check File permissions on the PC client.

  4. Ensure that TNS_ADMIN is set correctly.

  5. Check for firewall issues.

  6. Check that the Windows database service is started. Verify teh ORACLE_SID parameter is set correctly in the registry.

+0

我不确定它是否有所作为,但在该文章中描述的方案中,用户无法登录到数据库。我可以做到这一点,我不能从VS2010做到这一点。 – JHarnach 2011-04-18 03:09:24

+0

好的,我已经设置了ORACLE_HOME,设置了TNS_ADMIN,并设置了ORACLE_SID参数。防火墙不是问题,我不确定“文件权限”是什么意思,而且我正在使用最新版本的SQL.NET连接器。问题仍然存在,其他想法? – JHarnach 2011-04-18 03:24:29

0

哇。我终于得到了这个语法。 我是一个Sql Server的家伙。我在大日子里回到了甲骨文。 但我试图做一些实体框架和我说:“你不会睡觉,直到你的Visual Studio 2012和EDMX文件来谈谈甲骨文。

Geeze。

这里是什么我想出了:

数据来源: Oracle数据库(甲骨文ODP.NET)

数据源名称: 本地主机:1521/ORCL

用户名: SYSTEM

0

将默认数据源名称更改为localhost。