簡體   English   中英

連接到遠程Oracle 11g的連接字符串

[英]Connection string to connect to remote Oracle 11g

我需要從VBA連接到遠程Oracle服務器。 我不想安裝任何其他驅動程序或軟件來進行連接,因為我需要將Excel分發給團隊。

我嘗試了幾個連接字符串,給出了類似SQL_HANDLE_ENV failed錯誤SQL_HANDLE_ENV failed Oracle client and networking components not found. 或使用OraOLEDB.Oracle時找不到提供程序。

到目前為止已經嘗試了連接字符串:

    "Driver={Microsoft ODBC for Oracle}; CONNECTSTRING=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=servicename))); uid=username; pwd=Password;"

    "PROVIDER=MSDAORA.Oracle;DATA SOURCE=hostname;USER ID=username;PASSWORD=Password"

    "PROVIDER=MSDAORA;DATA SOURCE=hostname;USER ID=username;PASSWORD=Password"

    "Driver={Oracle in OraClient11g_home1};Dbq=servicename;Uid=username;Pwd=Password;"

    "Provider=OraOLEDB.Oracle;Data Source=hostname;User Id=username;Password=Password;"

我想在Windows中有一些預定義的驅動程序。 但是它不適用於oracle嗎? 我使用Windows 8非常感謝任何幫助。

我做了更多研究,發現了ODP.net。 因此,我認為結論是使用Oracle Instant Client或ODP.net。 但是我不確定如果沒有.Net框架,像ODP.net這樣的.net應用程序是否可以工作。 如果有人遇到此問題,請告訴我。

幾乎每個提供程序都需要安裝一個Oracle Client。 JDBC是Java的例外,它在VBA / Excel和ODP.NET Mananged Driver中不起作用。 但是,ODP.NET Mananged驅動程序是一個.NET程序集,它們不能與VBA / Excel中使用的COM一起使用。 您必須為此編寫自己的包裝器。

.NET框架是每個Windows安裝的一部分,應該不要擔心。

順便說一句,您是否將Microsoft ActiveX Data Objects ...參考Microsoft ActiveX Data Objects ...到了VBA項目?

在此處輸入圖片說明

看來您無法通過Oracle Instant Client。

嘗試這個:

Provider=MSDAORA.1;Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = SERVER0123)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = PRODDB)));User Id=USER_ID;Password=USER_ID_PASSWORD

顯然,您需要替換服務器,用戶名和密碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM