![](/img/trans.png)
[英]Oracle 11g ado connection strings for ODBC (not OLEDB) using excel VBA 64 bit (DSN Less and tnsnames)
[英]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.