全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3331
推到 Plurk!
推到 Facebook!

ORA-12154:TNS:無法指定連線的ID

缺席
ken77
一般會員


發表:4
回覆:4
積分:1
註冊:2003-02-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-11-08 17:07:04 IP:211.20.xxx.xxx 訂閱
各位大大:

我試著用Delphi 2010與Oracle 9i連線,因OS為Win7 pro x64版本,故Client端用Oracle Client 10g(10.1.1),在sqlplus 及SQLPLUSW中連線皆正常,但用TADOConnection去測試連線,都出現ORA-12154:TNS:無法指定連線的ID的錯誤,可是直接執行又沒問題,造成我設計時無法產生TField,提供以下資料供各位參考,幫我看一下問題在那裏

TNSNAME.ora
TRIMDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = DBSERVER)(PORT = 1521))
)
(CONNECT_DATA =
(SID = TRIMDB)
)
)

sqlnet.log
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES)

TNSPING
c:\Oracle\product\10.1.0\Client_1\network\admin\sqlnet.ora

使用 TNSNAMES 轉接器來解析別名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = DBSERVER)(PORT = 1521))) (CONNECT_DATA = (SID = TRIMDB)))
OK (330 msec)

sqlplus

C:\Users\ken>sqlplus admin@trimdb
SQL*Plus: Release 10.1.0.2.0 - Production on 星期一 11月 8 16:56:02 2010
Copyright (c) 1982, 2004, Oracle. All rights reserved.
輸入密碼:
連線到:
Oracle9i Enterprise Edition Release 9.0.1.1.1 - Production
With the Partitioning option
JServer Release 9.0.1.1.1 - Production
SQL>
SQL> select * from user_mast;
USER_ID USER_NAME PASSWORD
-------------------- -------------------- --------------------
CREATE_USER CREATE_NAME CREATE_TIME MODI_USER
-------------------- -------------------- -------------- --------------------
MODI_NAME MODI_DATE
-------------------- --------------
SYSADMIN 系統管理員 SYSADMIN20101106
SYSADMIN 系統管理員 06-11月-10

TadoConnection ConnectionString= Provider=OraOLEDB.Oracle.1;Password=********;Persist Security Info=True;User ID=admin;Data Source=TRIMDB

測試連線及直接執行,請參閱附檔



------
Ken Hsueh
系統時間:2018-01-20 8:50:13
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!