c#连接远程oracle数据库.ORA-12154无法解析指定的连接标识

本文关键字:连接 标识 oracle 数据库 ORA-12154 | 更新日期: 2023-09-27 18:09:45

我写了一个连接到Oracle 10g数据库的应用程序。在一台电脑上运行正常,但在另一台电脑上却出现了错误。这两台计算机都不是数据库服务器。

ORA-12154: TNS:could not resolve the connect identifier specified

使用的连接字符串:

private string = "provider=MSDAORA;Data Source=192.168.1.5/MyInstance;User Id=username;Password=password";
private OleDbDataAdapter oda = oda = new OleDbDataAdapter();
private OleDbConnection oracleConnection = new OleDbConnection(conString.ToString());

然而,它工作的计算机是另一个oracle实例的数据库服务器!

我的应用程序需要能够从任何计算机连接到oracle实例。

任何想法?

编辑:我试过这个什么是Oracle连接字符串的确切格式?但没有任何一种选择能奏效。

编辑:我发现一个连接字符串的工作。

Provider=OraOLEDB.Oracle; Data Source=(DESCRIPTION=(CID=GTU_APP)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.5)(PORT=1521)))(CONNECT_DATA=(SID=MyInstanceID)(SERVER=DEDICATED)));User Id = myusername; Password = mypassword;

c#连接远程oracle数据库.ORA-12154无法解析指定的连接标识

既然您可以通过SqlDeveloper连接,那么这应该是一个与您的连接字符串相关的问题。我不太确定是否有办法获得SqlDeveloper的连接字符串。使用connectionstrings.com变体验证您的连接字符串

经过大量的播放关于以下连接字符串为我工作。

提供者= OraOLEDB.Oracle;数据源=(DESCRIPTION=(CID=GTU_APP)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.5)(PORT=1521)))(CONNECT_DATA=(SID=MyInstanceID)(SERVER=DEDICATED))));用户Id = myusername;