Visual Basic Foro
Programación => Programación en Android => Mensaje iniciado por: javierjava en Junio 11, 2014, 11:53:44 am
-
Que tal alguien tiene experiencia con visual Basic Android (B4A)
lo que necesito hacer es insertar varios registros que tengo almacenado en un DBD SQLite y lo recorro un con for el problema es que solo me inserta un registro y los demás no los inserta este es el codigo que estoy usando.
Dim Query As String
cursor1 = SQL1.ExecQuery("SELECT * FROM geo_data")
For I = 0 To cursor1.RowCount - 1
cursor1.Position = I
Query="INSERT INTO geolocalizacion(fecha,hora,latitud,longitud,phonedID) VALUES ('" & cursor1.GetString("fecha") & "','" & cursor1.GetString("hora") & "','" & cursor1.GetString("latitud") & "','" & cursor1.GetString("longitud") & "','" & cursor1.GetString("phonedID") & "','" & cursor1.GetString("transmitido") & "')"
Req.InitializePost2("http://localhost/pruebagps.php",Query.GetBytes("UTF8"))
hc.Execute(Req,1)
Nextalguien me puede echar una mano de que estoy haciendo mal
gracias.
-
no tengo mucha experiencia en exto pero el hc tendria que ir dentro del buble como new
osea
for n = 0 to 4
Dim hc as new lo que sea
sentencia sql
hc.execute(req, 1)
next
-
Gracias pero no funciono este es todo el código
Sub Process_Globals
Dim SQL1 As SQL
Dim cursor1 As Cursor
Dim Req As HttpRequest
Dim hc As HttpClient
End Sub
Sub Globals
Dim Button1 As Button
Dim ListView1 As ListView
Dim Button2 As Button
Dim Button3 As Button
Dim Label1 As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("principal")
If FirstTime Then
hc.Initialize("hc")
End If
End Sub
Sub Button2_Click
Dim Query As String
cursor1 = SQL1.ExecQuery("SELECT * FROM geo_data")
For I = 0 To cursor1.RowCount - 1
cursor1.Position = I
Query="INSERT INTO geo_data(fecha,hora,latitud,longitud,phonedID,transmitido) VALUES ('" & cursor1.GetString("fecha") & "','" & cursor1.GetString("hora") & "','" & cursor1.GetString("latitud") & "','" & cursor1.GetString("longitud") & "','" & cursor1.GetString("phonedID") & "','" & cursor1.GetString("transmitido") & "')"
Req.InitializePost2("http://localhost/pruebagps.php",Query.GetBytes("UTF8"))
hc.Execute(Req,1)
Next
End Sub
Sub hc_ResponseSuccess (Response As HttpResponse, tarea As Int)
Dim resultString As String
resultString = Response.GetString("UTF8")
End Sub
Sub hc_ResponseError (Response As HttpResponse, Reason As String, StatusCode As Int, tarea As Int)
Log("Error: " & Reason & ", StatusCode: " & StatusCode)
If Response <> Null Then
Log(Response.GetString("UTF8"))
Response.Release
Label1.Text= Reason & ", StatusCode: " & StatusCode
End If
End Sub
-
Hola.
No tengo idea de SQLite, así que diré algo en términos generales.
Yo verificaría que el primer query ("cursor1 = SQL1.ExecQuery('SELECT * FROM geo_data')") traiga más de un registro.
Suponiendo que trae más de un registro, observo lo siguiente. A mi juicio, faltaría también moverse al segundo registro (en VB sería "Rst.MoveNext") luego de la inserción de datos, salvo que "hc.Execute(Req,1)" haga eso.
Si no es algo de eso, ya no se me ocurre nada.
Saludos.
Jerónimo
-
Gracias si esta recorriendo bien los registro