Programación > Programación en Android

Insertar registro desde json y visual basic android

(1/1)

javierjava:
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.

--- Código: ---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)

Next
--- Fin del código ---
alguien me puede echar una mano de que estoy haciendo mal
gracias.

wolf_kof:
no tengo mucha experiencia en exto pero el hc tendria que ir dentro del buble como new

osea


--- Código: ---for n = 0 to 4
Dim hc as new lo que sea

sentencia sql

hc.execute(req, 1)

next

--- Fin del código ---

javierjava:
Gracias pero no funciono este es todo el código

--- 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
--- Fin del código ---

Jeronimo:
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

javierjava:
Gracias si esta recorriendo bien los registro

Navegación

[0] Índice de Mensajes

Ir a la versión completa