Buenas tardes a todos, tengo este codigo que me esta dando problemas, es un insert de 85 mil registros y se esta demorando mucho, alrededor de 10 minutos, el tema es que en selectos casos he logrado que demore 30 segundos y no logro entender porque...
alguna idea para mejorar el rendimiento, desde ya, muchas gracias.
alguna idea para mejorar el rendimiento, desde ya, muchas gracias.
Insert:
Sub btnLote_Click
ProgressDialogShow("Cargando Lotes...")
Wait For (Connect) Complete (Success As Boolean)
If Success Then
Try
Dim sf2 As Object = mysql.ExecQueryAsync("mysql", "Select * from lote;",Null)
Wait For (sf2) mysql_QueryComplete (Success As Boolean, Crsr As JdbcResultSet)
If Success Then
Main.DBLocalWMS.BeginTransaction
Try
Main.DBLocalWMS.ExecNonQuery("Delete from lote")
Do While Crsr.NextRow
i = i + 1
AuxCodigo = Crsr.GetInt("codigo")
AuxLote = Crsr.GetString("lote")
AuxUMB = Crsr.GetString("umb")
AuxVenc = Crsr.GetString("vencimiento")
Main.DBLocalWMS.AddNonQueryToBatch("Insert into Lote values(?,?,?,?)",Array As Object(AuxCodigo,AuxLote,AuxUMB,AuxVenc))
Loop
Main.DBLocalWMS.ExecNonQueryBatch("mysql")
Main.DBLocalWMS.TransactionSuccessful
Catch
Log(LastException.Message)
End Try
Main.DBLocalWMS.EndTransaction
Crsr.Close
End If
Catch
Success = False
Log(LastException)
End Try
CloseConnection
ProgressDialogHide
End If
End Sub