使用 oledb 与 C# 的 Oracle 连接字符串

问题描述 投票:0回答:2

我正在用 C# 开发一个连接到 Oracle 10g 的应用程序。

当我使用ODP时。网络和这个

连接字符串“数据源=Angelo-HP/XE;用户ID=MAPFRE;密码=123456” 我可以连接数据库并执行任何操作,

但是当我使用 OleDbConnection (System.Data.OleDb) 时

连接字符串:“Provider=OraOLEDB.Oracle;OLEDB.NET=true;PLSQLRSet=true;用户ID=mapfre;密码=123456;数据源=XE” 我收到此错误:

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

当我尝试使用 OleDbConnection 中的 Open() 方法时。

我认为不是oracle配置,因为我可以从ODP和sqldeveloper客户端连接。

有什么想法吗?

谢谢,

c# oracle database-connection oledb
2个回答
0
投票

尝试以下链接中的连接字符串:

Oracle 连接字符串示例


0
投票

如果您的计算机上有多个版本的 oracle,则可能会出现此问题。

尝试这些步骤

  1. 进入oracle的网络文件夹并打开tnsnames.ora
  2. 搜索您的数据库名称(在本例中为 XE)
  3. 这将包含您的数据源信息(例如:(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(Host = xx.xx.xx.xx)(Port = xxxx)))(CONNECT_DATA =(SERVICE_NAME = XP ))))
  4. 在连接字符串的数据源字段中使用它。 (例如:数据源=(描述=(ADDRESS_LIST =(地址=(协议= TCP)(主机= xx.xx.xx.xx)(端口= xxxx)))(CONNECT_DATA =(SERVICE_NAME = XP)));“ )

另外,请确保您的解决方案是在任何CPU模式下构建的,并确保在应用程序池中启用32位是正确的

© www.soinside.com 2019 - 2024. All rights reserved.