Spanish [SOLUCIONADO]Saber si existe un registro SQL

netklamath

Member
Licensed User
Longtime User
Espero que podais echarme una mano, soy nulo en b4a, me estoy dando cuenta, pero tengo mucha constancia e ilusion en seguir aprendiendo. Resulta que tengo una base de datos con registros (id,nombre,telefono,etc...) y luego tengo otra base de datos que quiero compararla con la segunda, y si tiene mas registros que los meta (solo los nuevos).

Tengo este codigo:

for i=0 to lstid.size-1
cursor = SQL1.ExecQuery2("SELECT * FROM Contactos WHERE id = ?", Array As String(lstid.GetItem(i)))
next

Lo que no se es como saber en codigo decir si el resultado es que existe o no. Aqui, si lo he hecho bien, estoy diciendo que mire en todos los registros de la tabla contactos, alguno con el campo ID igual al listview (listid)

Espero haberme explicado bien y gracias


EDITO: Ya lo he conseguido. No se si lo hago bien pero funciona el codigo este:

B4X:
For i=0 To lstid.Size-1
                cursor1=SQL1.ExecQuery2("SELECT * FROM Contactos WHERE id = ?", Array As String(lstid.GetItem(i))) ' mira si hay algun contacto con el id igual que el del lstid(index)
                'si no encuentra ningun contacto con ese id, lo agrega a la BD
                If cursor1.RowCount=0 Then 'si no encuentra ningun contacto con ese id, lo agrega a la BD
                    Dim archivo_foto As String
                    archivo_foto=lstid.GetItem(i) & ".jpg"
                    SQL1.ExecNonQuery("INSERT INTO Contactos (id,nombre,telefono1,telefono2,grabar,foto) VALUES('" & lstid.GetItem(i) & "' , '" & lstcontacts2.GetItem(i) & "','" & lstMovil.GetItem(i) & "','" & lstMovil2.GetItem(i) & "','" & "no" & "','" & archivo_foto & "')")
                    ToastMessageShow(lstcontacts2.GetItem(i) & " Añadido.",False)
                    DBload ' vuelve a cargar la base de datos para que actualize los contactos para que se vean los nuevos
                End If
                'fin si no encuentra ningun contacto con ese id, lo agrega a la BD
            Next


LA tonteria mas grande que llevo horas y resulta que era esta linea de codigo la que me dice si hay algun registro encontrado con ese ID:

If cursor1.RowCount=0 Then
 
Last edited:

Descartex

Well-Known Member
Licensed User
Longtime User
Muy buenas,
Esa es una de las muchas formas de hacerlo.
Un saludo.
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…