2013-01-24 35 views
0

我正在將VB.NET 2010應用程序從32位2003服務器移動到連接到Oracle 11g數據庫的64位2008服務器,並在執行時收到以下錯誤消息。服務器2008上的ORA-12154錯誤

DefaultSource Error 2 
ERROR [08004] [Oracle][ODBC][Ora]ORA-12154: TNS:could not resolve the connect identifier specified 
ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed 

這是我所做的一些事情。

  • 將TNS_ADMIN環境變量添加到服務器。
  • 如果服務器管理員在OraClient11g_home1中安裝了64位「Oracle驅動程序Oracle」。他們還卸載了32位「Microsoft ODBC for Oracle」驅動程序。
  • 已驗證我可以用sqlplus
  • 更新我的連接字符串連接到服務器,因爲我用它來使用32位「微軟ODBC的Oracle」
  • 增加數據庫的ODBC系統DNS,並驗證該連接工作。

這是我的連接字符串從我的配置文件下的節點。

<add name="SCHEMA_NAME" 
connectionString="Driver={Oracle in OraClient11g_home1};Dbq=DATABASE_NAME;uid=USER;pwd=PASSWORD;"/> 

任何建議我可以嘗試什麼,或需要改變什麼才能讓這個工作在新的服務器上?

+0

我想補充一點,TNSPING也可以。 – MikeL

+0

您的應用程序是否編譯爲「AnyCPU」或「x86」?它是一個IIS應用程序? – GTG

+0

它符合AnyCPU,並且由批處理腳本執行。 WebSphere正在服務器上運行,但它未連接到應用程序。 – MikeL

回答

0

我通過更改連接到oracle的方式修復了問題。我正在使用Oracle.DataAccess引用,刪除連接字符串中的驅動程序引用,並使用OracleConnection和oracleCommand重建連接。