Ayuda con sentencia sql!!

Iniciado por Hartigan, 23 Julio 2010, 18:17 PM

0 Miembros y 1 Visitante están viendo este tema.

Hartigan

Hola compañeros, pues acudo a vosotros nuevamente porque me ha surgido una pequeña duda.

Quiero hacer una consulta a la base de datos sql server usando el texto de un textbox.

Como puedo hacer para que me admita cómodines???? es decir.

yo tengo un textBox para buscar nombres, y yo escribo por ejemplo:  *berto

Como seria la sentencia sql para que admita los cómodines??? yo tengo lo siguiente que es como he visto por net que sería pero no me funciona:

Código (SQL) [Seleccionar]

sentenciaSql = "SELECT nombre, ape1, ape2, telefono, email  FROM contactos WHERE nombre like '%" + texto + "%'";


Donde texto es una variable que contiene el texto del textbox (texto = textBox1.Text)


Salu2 y gracias de antemano

Novlucker

No se cual sea el problema pero la sentencia esta bien, solamente que en el textbox1.text no pongas el *, solo pon la palabra

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

[D4N93R]

Pues por lo que veo está bien.. Como dice Nov, quitale el * que eso no es comodín.. el comodín es %.

Hartigan

Vale me había liado yo y no lo estaba entendiendo bien. Gracias chicos. ;)

ssccaann43 ©

Bien te explico un poco el uso de los comodines...!

Si deseas listar Todo lo que vaya Despues de 'AL' sería de la siguiente manera...


PD: Suponiendo que en el textbox escribes el 'AL'
Código (sql) [Seleccionar]
sentenciaSql = "SELECT nombre, ape1, ape2, telefono, email  FROM contactos WHERE nombre like '" & TuTextBox.Text & "%'";


Ahora bien, si deseas listar todo lo que contenta 'AL', alli si sería usando ambos...

Código (sql) [Seleccionar]
sentenciaSql = "SELECT nombre, ape1, ape2, telefono, email  FROM contactos WHERE nombre like '%" & TuTextBox.Text & "%'";

Ahora, supongamos que buscas un registro de esta lista, pero no recuerdas el nombre ni nada, solo que su ID o Codigo  comienza con '000' y termina en '14' pero hay 9999999 registros que van desde el 0000001 hasta el 9999999... Como podríamos buscarlos?

Bien podemos usar esta sentencia:

PD: Suponiendo que en el textbox escribes el 14 que es lo que recuerdas.

Código (sql) [Seleccionar]
sentenciaSql = "SELECT nombre, ape1, ape2, telefono, email  FROM contactos WHERE Codigo like '000__" & TuTextBox.Text & "'";

Listo, con eso te los lista...

Bajate algún manual de SQL, hay muchos en la web, pero en caso de alguna duda, postea... Saludos...! ;D
- Miguel Núñez
Todos tenemos derechos a ser estupidos, pero algunos abusan de ese privilegio...
"I like ^TiFa^"