2013-01-14 167 views
0

我使用的是Oracle 11g,並且我試圖讓它連接到VB.net。我已經安裝了Oracle數據提供程序。我可以訪問示例文件夾下的tnsnames.ora。但是由於某種原因,我找不到listener.ora文件。當試圖連接到數據庫時,出現以下錯誤:ORA-12560:TNS:協議適配器錯誤。我試圖讓我的數據庫通過服務運行,但沒有顯示我的數據庫。使用VB.net連接到Oracle

希望我清楚,我會有任何建議,爲什麼沒有一個偵聽器文件,爲什麼會發生此錯誤。我已經嘗試通過教程,使用此鏈接http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/dotnet/GettingStartedVBVersion/GettingStartedNET_VBVersion.htm,也使用了嚮導,但仍然得到相同的錯誤消息。

+0

您是否試圖連接到本地計算機上的Oracle數據庫?或者到另一臺計算機上的Oracle數據庫(某個服務器)?如果您使用的是本地數據庫,是否證實可以通過SQL * Plus或SQL Developer連接到數據庫,甚至可以連接到Web管理界面? –

+0

我想在我的本地機器上運行。 Sql開發人員工作正常,我不知道爲什麼,但我沒有一個名爲listener.ora的文件。 – user1781162

+0

確定哪個SQL Developer連接正在工作(假設您正在使用其中一個自動生成的本地連接)?您在安裝數據庫時是否創建了一個偵聽器?或者你在SQL Developer中使用操作系統身份驗證嗎?您能否使用SQL * Plus從命令行連接到數據庫,並指定明確的服務名稱(即'sqlplus scott/tiger @ dbname')? –

回答

0

OK。用odt爲你的數據庫安裝ODAC。(32位)。不要編輯和tns的詳細信息 並把你的項目的參考添加到oracledataaccess.dll中。 導入這兩個

Imports Oracle.DataAccess.Client 
Imports Oracle.DataAccess.Types 

然後添加線

Dim oradb As String = "Data Source=*your tns entry goes here*" + "User Id=uname;Password=pass;" 
Dim conn As New OracleConnection(oradb) 
conn.open() 

該做的工作對我來說。 如果有效,請將數據添加到您的tns文件中,因爲建議不要在代碼中保留連接字符串。