ahora bien una simple migración de datos me tarda a mi punto de vista mucho tiempo, esto mismo ya lo comenté en otro hilo, solo que ahora he cambiado de equipo y estoy realizando otras pruebas masivas con un AMD de seis núcleos y 16GB de Ram (vamos que por máquina no puede ser casi seguro jajajaja)
El análisis es que son dos punteros a dos bases de datos (uno realiza la lectura de los datos y otro hace el insert en la nueva tabla) nada que deba ser excesivo.
La migración son 2.994 registros de iteración, yo lo veo muy sencillo a nivel de recursos.
seguramente algo no hago correctamente, os paso la iteración que estoy montando a ver donde cometo un error. El tiempo que he cronometrado da la friolera de 3 minutos 1 segundos en recorrer esta iteración. Brutal!
Private conn As Connection
Private conn2 As Connection
Public Sub connOriginal() As Connection
conn = New Connection
conn.Host = ".src/"
conn.Name = "original_DBFilms"
conn.Type = "sqlite3"
Try conn.Open()
Return conn
If Error Then
conn = Null
Message.Error("Error en conexión con DBOriginal")
Endif
End
Public Sub connFinal() As Connection
conn2 = New Connection
conn2.Host = ".src/"
conn2.Name = "DBFilms"
conn2.Type = "sqlite3"
Try conn2.Open()
Return conn2
If Error Then
conn2 = Null
Message.Error("Error en conexión con DBPArse")
Endif
End
Private conn2 As Connection
Public Sub connOriginal() As Connection
conn = New Connection
conn.Host = ".src/"
conn.Name = "original_DBFilms"
conn.Type = "sqlite3"
Try conn.Open()
Return conn
If Error Then
conn = Null
Message.Error("Error en conexión con DBOriginal")
Endif
End
Public Sub connFinal() As Connection
conn2 = New Connection
conn2.Host = ".src/"
conn2.Name = "DBFilms"
conn2.Type = "sqlite3"
Try conn2.Open()
Return conn2
If Error Then
conn2 = Null
Message.Error("Error en conexión con DBPArse")
Endif
End
Public Sub Button3_Click()
Dim nomParse As String
conectarOld = gConexion.connOriginal()
conectarNew = gConexion.connFinal()
rsOriginal = conectarOld.Exec("select nombre from peliculas_activas order by id asc ")
rsOriginal.MoveFirst
Do While rsOriginal.Available
nomParse = Replace(rsOriginal!nombre, "'", "''")
conectarNew.Exec("insert into peliculas (titulo_spa) values ('" & nomParse & "')")
rsOriginal.MoveNext
Loop
conectarNew.Commit()
Message.Info("Finalizado")
Dim nomParse As String
conectarOld = gConexion.connOriginal()
conectarNew = gConexion.connFinal()
rsOriginal = conectarOld.Exec("select nombre from peliculas_activas order by id asc ")
rsOriginal.MoveFirst
Do While rsOriginal.Available
nomParse = Replace(rsOriginal!nombre, "'", "''")
conectarNew.Exec("insert into peliculas (titulo_spa) values ('" & nomParse & "')")
rsOriginal.MoveNext
Loop
conectarNew.Commit()
Message.Info("Finalizado")