在PL/SQL中連接ORACLE時,出現:ora-12154:無法解析指定的服務名。怎麼解決呢?
鬱悶,也查了很多,但最終都不全面。所以,在這裏總結一下啦。
1、連接ORACLE時,出現這種錯誤,要不就是打開目錄盤下的E:/oracle10/product/10.1.0/db_1/NETWORK/ADMIN/listener.ora。內容如下:
# listener.ora Network Configuration File:G:/oracle10/product/10.1.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:/oracle10/product/10.1.0/db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = G:/oracle10/product/10.1.0/db_1)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
)
設置一下服務名。就OK啦。
2、或者啓動一下PL/SQL,出現登錄窗口時,點擊“取消”按鈕,直接進入,狀態顯示是Not Logged on。
然後選擇Tools菜單下的Preferences項,在打開的對話框中選擇connection項,session mode值設爲“multi session”,設置Oracle Home爲“OraDb10g_home1”,其他爲默認,然後點擊“OK”,重新啓動登錄即可。