1

我有一个远程 Oracle 11G 服务器,可以通过 SQL Plus 和 Visual Studio 的服务器资源管理器连接到该服务器。但是,当我在 C# 代码中使用相同的连接字符串时,我得到 ORA-12560: TNS:protocol adapter error。

我的连接字符串看起来像这样(已经在尝试完成的扩展版本):

Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.18.99.99)(PORT=1521))    (CONNECT_DATA=(SERVICE_NAME=MYORADB)));User Id=myuserid;Password=MyPasswd;

我最初尝试使用主机名而不是 IP 进行连接的结果是:

ORA-12545: Connect failed because target host or object does not exist

使用IP,地址我得到协议适配器错误

ORA-12560: TNS:protocol adapter error
at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode,     OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)
at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)
at Oracle.DataAccess.Client.OracleConnection.Open()
at TestConnection.Form1.btnTest_Click(Object sender, EventArgs e) 

我正在使用 11g 客户端安装目录中的 Oracle.DataAccess 版本 2.112.1.0。

服务器资源管理器的连接方式与代码内部的连接方式有什么不同吗?

4

0 回答 0