0
ExcelでADODB接続を使用してOracleデータベースに接続しています。 SQLデベロッパーでクエリを実行すると、約8秒実行されます(これは45 000レコードの完全な結果です)。同じ地震をExcel vbaで実行すると、20分ほどという非常に長い時間がかかります。 Excelでそれほど時間がかかるのはなぜですか?ここでExcelのOracleクエリー実行に時間がかかります
は、フル45Kレコードに対して実行する場合、それはあなたの実行を遅らせるか、Excelをハングアップします
Set rs = New ADODB.Recordset
Set con = New ADODB.Connection
con.CursorLocation = adUseClient
con.Open "Provider=OraOLEDB.Oracle;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST=JASONPC)(PORT=1521)))(CONNECT_DATA=(SID=jasonpc)));User Id=jason;Password=jason;DeferUpdChk=true"
rs.CursorType = ADODB.adOpenStatic
rs.LockType = adLockOptimistic
rs.Open sql, con
Set rs.ActiveConnection = Nothing
con.Close
Set con = Nothing
に基づいて、あなたを変更する必要があるクエリは何ですか?あなたは結果を読み込もうとしますか? – Bulat
ロックタイプをadLockReadonlyに変更してみてください – jkpieterse