Hola amigos, estoy atascado en una parte de un programa.
yo tengo una base dedatos con una lista de libros, y tengo un textbox que hace una busqueda por caracteres y que se modifica cada vez que el contenido del textbox cambia. es decir, si escribo una "r" se mostraran todos los libros que empiecen por esa letra, y si pongo "ra" se mostraran todos los libros que empiecen por "ra".
uso ADO para manejar la base de datos y no se porque el codigo no me funciona bien, no me encuentra registros en la tabla Libros, pero si quito la condicion where si me funciona perfectamente. pero por mas que lo mro no veo el fallo, espero que puedan ayudarme.
Public Function buscar_libros()
Dim campos As Integer
If Form1.Option1(0).Value = True Then
libr.Close
libr.Open "SELECT * FROM Libros WHERE Nombre LIKE '" + Form1.Text2.Text + "*' order by Numero ", db, adOpenStatic, adLockOptimistic
Else
libr.Close
libr.Open "SELECT * FROM Libros WHERE Nombre LIKE '" + Form1.Text2.Text + "*' order by Nombre", db, adOpenStatic, adLockOptimistic
End If
If libr.RecordCount <> 0 Then libr.MoveFirst
Do While Not libr.EOF
Form1.ListView1.ListItems.Add , , libr(0)
For campos = 1 To libr.Fields.Count - 1
If IsNull(libr(campos)) Or libr(campos) = "" Then
Form1.ListView1.ListItems(Form1.ListView1.ListItems.Count).SubItems(campos) = ""
Else
Form1.ListView1.ListItems(Form1.ListView1.ListItems.Count).SubItems(campos) = libr(campos)
End If
Next campos
libr.MoveNext
Loop
End Function
un saludo. muchas gracias a todos
Hola, esa funcion debes tenerla en el evento change del text... Aparte en vez de:
Nombre LIKE '" + Form1.Text2.Text + "*'
Es:
Nombre LIKE '" & Form1.Text2.Text & "%'
Revisalo e informa... Saludos
gracias ssccaann43 ;) no sabia que fuese un fallo tan tonto xDD