c# - 使用 ODP.Net 的问题

标签 c# .net oracle odp.net

我已经成功使用了Oracle Database 11g Release 2 (11.2.0.1.0)从 .Net 连接 oracle。 (引用 Oracle.DataAccess.dll 版本为 2.112.1.0)。

但是当我安装 ODP.NET 并尝试连接到 oracle 时,它​​给了我一个错误:“ORA-12154:TNS:无法解析指定的连接标识符”。

我该如何解决这个问题?

谢谢!

最佳答案

这通常发生在您的 oracle 客户端不在您计算机的 PATH 中时。

确保 PATH环境变量同时包含 <Oracle client path><Oracle client path>\bin .

此外,如果 SID 会发生这种情况tnsnames.ora 中根本没有定义您要连接的数据库oracle客户端安装路径下的文件。如果我没记错的话——它在 <Oracle client path>\network\admin\tnsnames.ora

编辑:注册表应包含一个 ORACLE 条目集:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\
应该有一个名为 HOME0 的键具有字符串值:ORACLE_HOMEID。我假设还需要其他值 - 但我确信这两个值。检查 ORACLE_HOME 是否正确指向 oracle 客户端位置。

关于c# - 使用 ODP.Net 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6058744/

相关文章:

c# - VB.net 的 InputDialog 的 C# 版本是什么?

VM 上安装的 .NET Framework 控制台应用程序无法访问 Azure Key Vault

oracle - 如何在Oracle中创建数据挖掘模型?

c# - 从 Entity Framework 中的数据库更新模型不起作用

javascript - 如何从 HTML 集合中提取名称?

c# - 使用 .NET Core 2.1 创建新项目后 IIS 上的事件错误 9009

.net - 为什么 COM 互操作优先于 .NET 中的 P/Invoke?

c# - 是否可以捕获使用 SmtpClient 发送的电子邮件的 "Message-ID"?

sql - 将时间戳/日期时间从 UTC 转换为 EST Oracle SQL

sql - 使用 sqlplus 从命令行运行 oracle 脚本时出现问题