我们使用的系统。数据。OracleClient和抽象的基类对象DbCommand(等等)以连接到Oracle。

连接工作的现在我们的发展阶段。在临时,我们遇到的错误ORA-12514:TNS:监听器目前并不知道的服务要求在连接的描述符。

我们的目标是连接不TNS条目,并提供所有相关信息连串(www.connectionstrings.com/oracle#19)

我可以确认SQL加将连接到期望的架构,从临时服务器(监听听).TNS项钩入SQLPlus匹配的所有凭证的查询串正在建设之中。

SERVER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));uid=myUsername;pwd=myPassword;

是否有一个安装服务器上的我们错过了什么?我们可以调整?

任何帮助表示赞赏。

有帮助吗?

解决方案

一个SID不是服务名称。服务名称通常是一个完全合格的数据库名称,而一个SID是一个短标识符

一个服务名称可能是dbname.company.com,而你的SID是DBNAME。一个实例可以实际具有与其相关联的若干服务名称,但只有一个SID。

更改您的SERVICE_NAME到SID在你的连接字符串,或为SERVICE_NAME选项指定服务名称。

其他提示

如果我没有记错,我有同样的问题,直到我切换到使用Oracle提供者和OracleDbConnection和OracleDbCommand。通用的人并不总是实例在所有情况下正确的提供者。

如果你Oracle客户在10版本,你也可以使用 EZCONNECT (代表 很容易连接的命名方法).你连串然后会是这样的:

"Data Source=MyHost:MyPort/MyServiceName;User ID=myUserName;Password=myPassword"

结合 Oracle即时的客户, 它使得使用Oracle的感觉几乎是专业的!...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top