2
我製作了一個連接到Oracle9i數據庫的.NET(4.6.1)應用程序。 此應用程序在我編寫應用程序的機器上正常工作,但不在應用程序需要安裝的機器上。僅在某些計算機上的.NET應用程序中出現Oracle9i連接錯誤(ora-12154)
我正在使用System.Data.OracleClient。我不知道什麼是錯的。我查了下面的東西。
- 兩臺計算機都運行相同的Oracle客戶端,並使用相同的TNS名稱 配置。該配置從正在工作的開發機器 中複製而來。
- 兩臺機器都需要正確的tnsnames.ora文件(使用 procmon進行驗證)。
- 兩臺機器都可以很好地連接SQLPlus。
- 兩臺機器都使用相同的活動目錄帳戶進行測試。
- 兩臺機器都爲 連接提供了正確的用戶名和密碼設置。
- 我嘗試全新安裝的oracle客戶端沒有成功。
- 應用程序在兩臺機器上都以32模式運行。
- 兩臺機器上運行Windows 7的任何人的
相同的版本知道還有什麼可能是這個問題的原因是什麼?
堆棧跟蹤錯誤:
2017-10-05 16:40:48.7203 - ERROR: System.Data.OracleClient.OracleException (0x80131938): ORA-12154: TNS:servicenaam kon niet worden herleid.
bij System.Data.OracleClient.OracleException.Check(OciErrorHandle errorHandle, Int32 rc)
bij System.Data.OracleClient.OracleInternalConnection.OpenOnLocalTransaction(String userName, String password, String serverName, Boolean integratedSecurity, Boolean unicode, Boolean omitOracleConnectionName)
bij System.Data.OracleClient.OracleInternalConnection..ctor(OracleConnectionString connectionOptions)
bij System.Data.OracleClient.OracleConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
bij System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
bij System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
bij System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
bij System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
bij System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
bij System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
bij System.Data.OracleClient.OracleConnection.Open()
bij QardPrint.Model.Locus.LocusFunctions.AddEmployee(Employee employee, String& errMsg)