gpt4 book ai didi

c# - 如何在 C# 应用程序中设置 TNSNAMES 文件的正确路径?

转载 作者:太空狗 更新时间:2023-10-29 22:08:22 26 4
gpt4 key购买 nike

我有一个使用 ODP.NET dll 的 C# 程序:

oci.dll, ociw32.dll, Oracle.DataAccess.dll,
orannzsbb11.dll, oraocci11.dll, oraociicus11.dll,
OraOps11w.dll.

我有 2 台电脑。首先安装了整个 ODAC 包,然后没有安装该包。但是我的 exe 目录中有所有需要的 dll,所以我认为 ODAC 不是问题。

这些计算机之间的区别在于 TNSNAMES 文件的路径。

First: C:\app\OraHome_1\Network\admin\
Second: C:\Oracle\product\11.2.0\client_1\network\admin

在第一台电脑上,程序运行良好。但是在具有相同连接字符串的第二个上,我得到了错误:

cannot open connection (ORA-12154)

使用 SQL Plus 我可以在两台计算机上进行连接。如何向我的程序显示 tnsnames.ora 文件的正确路径?

最佳答案

您可以通过编程方式设置 TNS_ADMIN 环境变量。请参阅此页面以获取 step by step.也就是说,如果您想更改为特定的 TNS_NAMES.ORA 文件。 Oracle 客户端仍必须安装在客户端计算机上。

来自 ConnectionStrings - 不使用 TNS:

Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword;


编辑: 添加了第三个选项

see this question这可以帮助您找到客户端 TNS_NAMES.ORA 文件的当前位置 - 您可以根据需要打开和修改该文件(如果不存在则添加您自己的连接)

关于c# - 如何在 C# 应用程序中设置 TNSNAMES 文件的正确路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10618512/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com