Clientes = Nombre de la tabla de la base de datos
MSql = variable string
Nombre = Campo de la base de datos (puede ser cualquiera)
Me.Text1.text = letra, palabra o frase utilizada como parámetro para la búsqueda
ParaOrdenar = variable de texto utilizada como parametro de ordenamiento (tiene que ser un campo de la tabla)
rs = variable recordset
db = variable database
MiSql = "SELECT * FROM Clientes " _
& "WHERE Nombre LIKE '*" & Me.Text1.Text & "*'" & "ORDER BY " & ParaOrdenar
La siguiente consulta hace casi lo mismo solo que muestra los registros que empiezan con la letra, palabra o frase....
MiSql = "SELECT * FROM Clientes " _
& "WHERE Nombre LIKE '" & Me.Text1.Text & "*'" & "ORDER BY " & ParaOrdenar
Set rs = db.OpenRecordset(MiSql, dbOpenDynaset)
If rs.EOF Then
MsgBox "No existen registros que coincidan con los datos proporcionados...", 48, Me.Caption
rs.Close
Else 'Llena la Tabla o lista o lo que se les plazca
Do While Not rs.EOF
bla... bla...
loop
rs.close
end if
Comentarios sobre la versión: Versión 1 (10)
Saludos
ademas k tiene k ver con windows .. es codigo de visual basic y ademas
demuestras k no eres muy bueno en el SQL eso es para niños de kinder
chale bato ni pareces de obregon ...
Aunque no todas son palidas, a pesar de eso le puede servir a la gente que esta empezando con la porgramacion de base de datos para sacarse algunas dudas
Para usar el LIKE en ADO 2.8 para arriba o en SQL server 2000 deben cambiarse los comodines '*' por los comodines '%' (simbolo de porcentaje). De no hacerlo el LIKE funcionara buscando un STRING que contenga el *
Ejemplos:
BUSCA TODO LO Q TENGA H EN Mi_Campo en ADO <= 2.7
SELECT * FROM Mi_Tabla WHERE Mi_Campo LIKE '*H*'
BUSCA TODO LO Q TENGA H EN Mi_Campo en ADO >= 2.8 y SQL SERVER
SELECT * FROM Mi_Tabla WHERE Mi_Campo LIKE '%H%'
Espero les sea util, estos cambios estan muy mal documentados en las referencias de MSDN y demas, y realemente rompen mucho la paciencia... NUNCA SUPE POR QUE HACEN ESTAS COSAS...