2

我在我的机器上使用 .net OracleClient 连接到 Oracle 中的数据库。当我试图连接它时显示这个 TNS 错误。

现在,我已经编辑了 tnsnames.ora 文件和 sqlnet.ora 文件。当我使用 ServerExplorer 访问 Oracle 时。它连接到 Oracle 数据库并获取所有内容。

我确实有一个来自 oracle 网站本身的 ODAC 组件,我也尝试过,但效果很好。

我的连接字符串是<add name="netOracleClient" connectionString="Data Source=ff.WORLD;Persist Security Info=True;User ID=vlc;Password=vlc;Unicode=True" providerName="System.Data.OracleClient" /> <add name="ConnectionString" connectionString="DATA SOURCE=ff.WORLD;PASSWORD=vlc;USER ID=vlc" providerName="Oracle.DataAccess.Client" />

我在两个组件中都尝试了 ServerExplorer。它与服务器资源管理器一起工作正常,我也正在获取数据。但是当我编写代码时,它向我抛出了这个错误 ORA-12154: TNS:could not resolve the connect identifier specified

这是我试图连接的代码。

 OracleConnection con = new OracleConnection(WebConfigurationManager.ConnectionStrings["netOracleClient"].ConnectionString);

告诉我解决这个问题的方法???

注意:我们这里有机器,我们使用 OracleClient for .net 访问具有相同 TNS 的相同数据库。我也想用一样的。。

请帮助我。

4

3 回答 3

1

现在它为我工作。我们执行此操作所遵循的步骤。

  • 我们注意到我们有多个 TNSNames.ORA 文件。
  • 然后我们可以发现它指向 Oracle Client 版本 8.x。所以它不能正常工作。所以为了使用它...
  • 我们删除了所有的 ORacle 客户端版本(因为我们无法将 VisualStudio Oracle 客户端指向更新的版本)

  • 重新安装了一遍。重新启动后,它开始工作。

于 2012-08-08T07:31:01.627 回答
0

我们让 ODAC 可以很好地处理这个连接字符串,

<ConnectionString name="ServerConnection">Data Source=PROD;User Id=DBUSER1;Password=DBPASSWORD1;Pooling=False;</ConnectionString>

连同定义数据源的 tnsnames.ora - PROD 与 Oracle/Network/Admin 文件夹中的示例 tnsnames.ora 文件中的相同。

tnsnames.ora 条目是这样的

DDSENT3 =    
  (DESCRIPTION =        
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.15.10)(PORT = 1521))    
    (CONNECT_DATA =    
      (SERVER = DEDICATED)    
      (SERVICE_NAME = DDSENT3)    
    )
  )
于 2012-01-17T09:08:20.840 回答
0

尝试将以下内容添加到您的web.config

<oracle.manageddataaccess.client>
    <version number="*">
      <settings>
        <!-- Set this path if you are using TNS aliases as connection strings (not recommended) -->
        <!-- Instead you can use "SERVER_NAME:PORT/SERVICE_NAME" as your data source -->
        <setting name="TNS_ADMIN" value="C:\oracle\product\11.2.0\client_3\Network\Admin\"/>
      </settings>
...

当然,只需添加您的文件夹位置。

于 2014-12-31T09:57:51.133 回答