Win Form:ORA-12154:TNS:无法解析指定的连接标识符

时间:2017-01-10 14:44:24

标签: c# oracle

我创建了一个简单的Win Form应用程序。但是我收到错误: ORA-12154:TNS:无法解析指定的连接标识符

我有一个Oracle连接设置。我通过Server Explorer连接到数据库来验证这一点。 (连接到DB)。

我知道我缺少一些微不足道的东西。

我正在使用从Nuget下载的Oracle托管驱动程序。

我怀疑它无法找到我的TNS设置。我该如何验证?

简单代码:

    string connString = "Data Source=qqqqq;User Id=zzzzzz;Password=xxxxx;";
    using (OracleConnection oConn = new OracleConnection(connString))
    {
        oConn.Open();

        OracleCommand cmd = new OracleCommand("select * from my_table");
        var recCount = cmd.ExecuteNonQuery();
    }

1 个答案:

答案 0 :(得分:0)

ODP.Net托管驱动程序很可能找不到您的#include <iostream> #include <string> int main(int argc, char *argv[]) { std::wstring wstr = L"Hello World"; if(wstr == L"Hello World") { std::wcout << wstr << std::endl; } return 0; } 文件。 Oracle名称服务的tnsnames.ora文件

ldap.ora文件的搜索路径是:

  1. .NET配置文件中tnsnames.ora部分dataSources部分中的数据源别名(即<oracle.manageddataaccess.client>machine.configweb.config)。
  2. .NET配置文件中user.config指定位置的tnsnames.ora文件中的数据源别名。位置可以包含绝对或相对目录路径。
  3. TNS_ADMIN位于同一目录中的tnsnames.ora文件中的数据源别名。
  4. 请参阅Oracle Data Provider for .NET, Managed Driver Configuration

    注意,与ODP.NET非托管驱动程序,SQL * Plus或.exe工具不同,ODP.Net托管驱动程序读取环境变量tnsping.exe,也不读取注册表项{{ 1}}