2012-01-13 81 views

回答

1

你可能想從擅長VBA

Sub DisplayDBATables() 

    Dim cn As ADODB.Connection 
    Dim rs As ADODB.Recordset 

    Set cn = New ADODB.Connection 
    Set rs = New ADODB.Recordset 

    cn.Open (_ 
    "User ID=rene"  & _ 
    ";Password=my_secret" & _ 
    ";Data Source=XE"  & _ 
    ";Provider=MSDAORA.1") 

    rs.Open "select * from dba_tables", cn 

    Cells(1, 1).CopyFromRecordset rs 

End Sub 

MSDN says複製一個ADO或DAO Recordset對象的內容中做到工作表,在規定範圍內的左上角開始。如果Recordset對象包含其中包含OLE對象的字段,則此方法失敗。

+0

嗨,我試着從「立即」做它,但我得到一個錯誤,它說「運行時錯誤'13':類型不匹配」, 當我試圖從「常規」運行它時,我得到一個錯誤用戶定義類型未定義。 這裏有什麼幫助嗎?除了一些超級簡單的更新腳本以外,我從未使用過vba。 – Joe 2012-01-13 10:08:50

+0

您是否添加了在Excel中使用ADODB的引用? – 2012-01-13 10:17:15

+0

不,但我不知道該怎麼做。 描述如何做到這一點將是很好的! :) 我沒有任何ADODB下的「參考」,我可以檢查。 – Joe 2012-01-13 10:19:35

0

export(exp)命令用於以二進制格式導出數據(適合備份)。 使用sqlplus,可以使用spool命令將查詢結果導出到文本文件。

More on using spool info here

這就是說,它更容易使用像蟾蜍或SQL開發工具來做到這一點。

+0

「這就是說,使用像蟾蜍或sql開發者這樣的工具可以更容易地完成它。」你能告訴我如何通過查詢或腳本將查詢結果導出到txt文件嗎? – mooseman 2013-05-23 15:17:11

+0

@mooseman使用線軸?蟾蜍? – 2013-05-23 15:19:44