我的计算机上安装了Oracle Enterprise Edition和Oracle Forms,当我从sqlplus和sqldevelopper连接到数据库时,它连接无误,但当我尝试从Oracle Forms连接时,它给我以下错误:
ORA-12154:could not resolve the connect identifier specified
我在网上查过,我在某个地方读到,这可能是因为我的计算机上安装了多个Oracle客户端,sqlplus使用了正确的文件,而Oracle Forms使用了不正确的文件,我认为这就是我的情况,因为我有两个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)
)
)
如果是这样的话,我该怎么解决这个问题?
3条答案
按热度按时间xwbd5t1u1#
您可以只设置
TNS_ADMIN
环境变量。它总是指向tnsnames.ora目录。并且所有Oracle产品都查看此变量。因此,只需将
TNS_ADMIN
设置为:crcmnpdw2#
我通过执行以下步骤解决了问题:
1.已卸载Oracle表单和报表。
1.使用通用安装程序卸载了Oracle数据库。
1.已删除与oracle关联的所有注册表和服务。
1.已重新安装Oracle数据库。
1.已重新安装Oracle表单和报表。
1.从我的tnsnames.ora文件复制,该文件位于
C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN
到位于C:\orant\NET80\ADMIN
中的tnsnames.ora文件,此部分:效果很好。
kxe2p93d3#
根据您的Oracle_Home变量配置,请检查在安装Oracle Forms & Reports时创建的域文件夹中是否存在TNS条目。示例:C:\Oracle\中间件\Oracle主目录\用户项目\域\基本域\配置\fmwconfig\tnsnames.ora