2012-09-17 38 views
1

在.Net(3.5)C#和Oracle Express 10g中開發應用程序。當我嘗試connecto到數據庫中,我得到這個錯誤:嘗試使用OracleConnection連接到使用C#的Oracle Express 10時出錯

從的OracleConnection對象我,在ServerVersion屬性:

ServerVersion = 'conn.ServerVersion' produjo una excepción de tipo 'System.InvalidOperationException'

,並在catch:

ORA-12154: TNS:could not resolve the connect identifier specified

我正在使用此連接字符串:

Data Source=Angelo-HP/XE;User ID=MAPFRE;Password=123456;

我的tnsnames.ora設置:

XE = 
    (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = Angelo-HP)(PORT = 1521)) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = XE) 
) 
) 

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

ORACLR_CONNECTION_DATA = 
(DESCRIPTION = 
    (ADDRESS_LIST = 
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE)) 
) 
    (CONNECT_DATA = 
    (SID = CLRExtProc) 
    (PRESENTATION = RO) 
) 
) 

和我的sqlnet.ora是這樣的:

SQLNET.AUTHENTICATION_SERVICES = (NTS) NAMES.DIRECTORY_PATH= (LDAP, TNSNAMES, HOSTNAME)

任何想法,爲什麼我無法連接?

謝謝。

+0

嘗試在連接字符串中將數據源設置爲XE。你能翻譯英文的錯誤信息嗎?更容易理解我們;-) – Koen

+0

'conn.ServerVersion'類型'System.InvalidOperationException'發生的異常 TNS:無法解析指定的連接標識 –

+0

使用ODP.NET ?. – Reniuz

回答

0

連接字符串被提及作爲

Data Source=Angelo-HP/XE;User ID=MAPFRE;Password=123456; 

這意味着它的尋找安傑洛-HP/XE,這是不存在的TNS名稱,因此您收到錯誤消息

的TNSNAME

將其更改爲

Data Source=XE;User ID=MAPFRE;Password=123456; 
+0

仍然是錯誤 –

+0

打開命令提示符,鍵入'tnsping XE'。它說什麼? @Angelo – Sathya

+0

它說:TNS-03505:無法解析名稱 –

0

您應該在我的評論中提到的數據源,屬性更改爲XE。

Data Source=XE;User ID=MAPFRE;Password=123456; 

此外,您還必須確定您的tnsnames中的標識符前沒有空格。

另一件事:如果你有多個oracle客戶端安裝,你必須確保這個條目是在正確的tnsnames。

+0

連我做到了,現在我的連接字符串是: 數據源= XE;用戶ID = MAPFRE;密碼= 123456; 我只有一個oracle客戶端是oracle express 10g。它是我第一次安裝oracle。 –

相關問題