Oracle 表单:TNS:无法解析指定的连接标识符

Posted

技术标签:

【中文标题】Oracle 表单:TNS:无法解析指定的连接标识符【英文标题】:Oracle forms: TNS: could not resolve the connect identifier specified 【发布时间】:2017-04-05 15:18:08 【问题描述】:

我的计算机上安装了 oracle Enterprise edition 和 oracle forms,当我从 sqlplus 和 sqldevelopper 连接到我的数据库时,它连接没有错误,但是当我尝试从 oracle forms 连接时,它给了我这个错误:

ORA-12154:could not resolve the connect identifier specified

我在网上看过,我在某处读到可能是因为我的计算机上安装了多个 oracle 客户端,并且 sqlplus 使用正确的文件,而 oracle 表单使用了不正确的文件,我认为是我的情况,因为我有两个 tnsnames.ora 文件: 在这里:

C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora

在这里:

C:\oracle\product\10.2.0\NETWORK\ADMIN\SAMPLE

这是第一个 tnsnames.ora 文件的内容:

# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = BOUHDID.Home)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

如果是这样,我该如何解决这个问题?

【问题讨论】:

您的oracleforms 是否指向 C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora? Possibly relevant? @NicholasV。我怎么知道“oracleforms”指向哪里? 我个人不使用 Oracleforms,所以我不确定。我知道在 SQLDeveloper 中,TNSNames 是在 Tools > Preferences > Database > Advanced 中设置的。也许 Oracleforms 有类似的设置? 【参考方案1】:

您可以设置 TNS_ADMIN 环境变量。 这个 alawys 指向 tnsnames.ora 目录。所有的预言机产品都看这个变量。

所以您只需将TNS_ADMIN 设置为:

C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN

【讨论】:

我确实这样做了,但它一直给我同样的错误!所以我卸载了所有东西,然后重新安装了它【参考方案2】:

我通过以下步骤解决了我的问题:

    已卸载 Oracle 和报告。 使用通用安装程序卸载 Oracle dababase。 删除了所有与 oracle 相关的注册表和服务。 重新安装 Oracle 数据库。 重新安装了 oracle 表单和报告。 从我位于的 tnsnames.ora 文件中复制

C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN 到位于C:\orant\NET80\ADMIN 的 tnsnames.ora 文件 这部分:

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = BOUHDID)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

它就像一个魅力。

【讨论】:

以上是关于Oracle 表单:TNS:无法解析指定的连接标识符的主要内容,如果未能解决你的问题,请参考以下文章

Oracle.ManagedDataAccess:TNS:无法解析指定的连接标识符

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

Oracle数据库ORA-12154: TNS: 无法解析指定的连接标识符详解

PLSQL链接oracle报错--ORA-12154: TNS: 无法解析指定的连接标识符

PLSQL链接oracle报错--ORA-12154: TNS: 无法解析指定的连接标识符

ORACLE:ORA-12154 TNS无法解析指定的连接标识符(易忽略原因)