2010-03-04 126 views
0

我正在讀取一個csv文件到vb.net中的數據表中,並進行一些檢查並追加一個額外的列。 然後,我希望使用microsofts Oracle.DataAccess(在此選擇)執行批量插入到Oracle數據庫。使用Oracle.DataAccess和VB.net將數據表批量插入到Oracle中

什麼是最好的方式來執行此操作,因爲沒有像SQLserver那樣的bulkImport。

感謝

回答

0

爲什麼批量插入而不是常規的插入?

如果要避免生成重做日誌條目,最好的方法是將常規插入到全局臨時表[由於它是暫時的,它不需要恢復],因此不會生成重做。然後,最後,從臨時表中將INSERT/* + APPEND * /添加到實際表中。如果真正的表被定義爲NOLOGGING,附加提示將告訴它不要生成重做。

+0

謝謝加里, 我說大容量插入,因爲這是我用這個時,要去一個sqlserver。 (.net的SQL數據提供程序有一個BulkCopy命令) 我想要最好的方法將數據表數據插入到oracle。 它只是通過調用插入到Oracle DB的表循環。 這是很多往返的dB,不是嗎? – bryan

+0

任何有關於此的任何想法? – bryan

0

我一直在尋找類似的線條,但是卻遇到了一個死衚衕。我從Microsoft公司ADO .NET團隊項目經理Pablo Castro的聲明中瞭解到,SqlBulkCopy包含在ADO.NET 2.0中,用於SQL Server的.NET提供程序(SqlClient)。他們不支持OracleClient提供商的批量複製。