2016-01-21 51 views
0

我正尝试使用VBA和Excel从Oracle数据库上的不同表读取数据。 通常读表,当我运行类似:使用VBA从隐藏的Oracle表中读取ADODB

Dim rs As Object 
Set rs = CreateObject("ADODB.Recordset") 
Dim query As String: query = "SELECT * FROM OBJ_NAME" 
rs.Open query, con 

然而,这并不适用于所有的表工作。使用SQL Developer我通常在开头运行:

exec session#.open_session(); 

之后我可以读取任何表格。有没有办法在开始时使用ADODB.Recordset运行此命令?用命令替换SQL查询不起作用。

还是有不同的方式来阅读这个'隐藏'的表?

回答

0

尝试类似的东西:

Dim rs As Object 
Set rs = CreateObject("ADODB.Recordset") 
Dim query As String: query = "begin session#.open_session; end;" 
With rs 
     .ActiveConnection = con 
     .Open query, con 
End With 

Set connectToDB = con 

这应该使用VBA。让我,如果它的工作:)

+0

谢谢,这实际上解决了我的问题。 :) – Johnny

+0

很高兴我能帮你:) – Danica