• Martes 21 de Mayo de 2024, 01:40

Autor Tema:  Coincidencia De Palabras Almacenadas  (Leído 2714 veces)

jebado

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Coincidencia De Palabras Almacenadas
« en: Sábado 23 de Octubre de 2004, 14:02 »
0
Hola maestros:
Necesito saber código VB.Net en Winforms que muestre la coincidencia de palabras almacenadas  en una base de datos a medida que escribes las letras en un TextBox.Seguro que hay algún ej. entre nosotros.... :comp:  Un saludo.

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Coincidencia De Palabras Almacenadas
« Respuesta #1 en: Domingo 24 de Octubre de 2004, 05:25 »
0
jebabo lo que quieres es buscar palabras en una base de datos, o que es lo que quieres....?  :scream:


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

jebado

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Re: Coincidencia De Palabras Almacenadas
« Respuesta #2 en: Lunes 25 de Octubre de 2004, 00:45 »
0
Buscar por apellidos. Tecleando las primeras letras del apellido de una BBDD en un TextBox y salgan apellidos iguales en listBox por ejemplo... :rolleyes:

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Coincidencia De Palabras Almacenadas
« Respuesta #3 en: Lunes 25 de Octubre de 2004, 06:12 »
0
facil, todo esta en la consulta, lo que tienes que usar es LIKE, que es el que te busca todos los campos iguales con la cadena que le mandas. Despues esta consulta la guardas en DataReader, y despues lo recorres y lo almacenas en tu ListBox. :scream:


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

jebado

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Re: Coincidencia De Palabras Almacenadas
« Respuesta #4 en: Miércoles 27 de Octubre de 2004, 19:52 »
0
Gracias maestro, investigaré... :comp:

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Coincidencia De Palabras Almacenadas
« Respuesta #5 en: Miércoles 27 de Octubre de 2004, 22:25 »
0
Aca te paso un ejemplo de la clausula LIKE

Código: Text
  1.  
  2. SELECT * FROM nombre_tabla WHERE campo1 LIKE '%a'
  3.  
  4.  

Devuelve todos los campos de las filas con campo1 terminando en a (Málaga, Barcelona, Segovia serían devueltas).


Aqui te envio una URL que esta bravasa, y te explica con mas detalle la clausala LIKE: LIKE de SQL


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

timpsoft

  • Miembro activo
  • **
  • Mensajes: 53
    • Ver Perfil
    • http://www.msdnlive.net/
Re: Coincidencia De Palabras Almacenadas
« Respuesta #6 en: Jueves 28 de Octubre de 2004, 16:33 »
0
la programación tienes que hacerlo en el evento keypress de tu textbox en donde iras ingresando la búsqueda y ahi hacer la llamada a la base de datos, pero ojo no nos olvidemos de la performance, imagina que haces lo del like, eso implica que por cada tecla que el usuario presione habra una conexión a la base de datos, imagina si presiona 10 veces las teclas entonces habra 10 llamadas al servidor, diez conexiones que se habren y si cierran, otra opción es traer todos los datos una vez y almacenarlo en un datatable y para filtrar usar un dataview en donde hagas los filtros respectivos  :) . Pero la pregunta es cuando elegir una u otra opción verdad  :( ? Pues digamos que es cuestión de analizar la situación  :comp: , si por ejemplo la tabla que contiene tus datos tiene unos millones de registro porsupuesto que no es conveniente traer todos los datos a un datatable porque eso generaria que nuestra maquina cliente se sobrecargue y nuestra memoria vuele verdad  <_< , asi que en ese caso seria mas conveniente aplicar primero un filtro para no sobrecargarnos con datos. Aplicar  lo otro en caso la cantidad de datos con los que trabajaremos son pocos, ahora cuantos?? pues eso es criterio de cuanta memoria tengas, procesador entre otras cosas. BUeno suena complicadito pero la performance es algo fundamental en sus aplicaciones.

P.D. Un tip mas, si usan indices (clustered o nonclustered, cuando crean la clave principal por defecto se crea un indice  :rolleyes: ), entonces no hagan la consulta de la siguiente manera:
SELECT * FROM nombre_tabla WHERE campo1 LIKE '%a'
porque de esa forma no estan utilizando los inidices y en vez de eso realizan un table scan(o en algunos casos un index scan  :blink: ) y eso por performance no es nada bueno ya que imaginen si su tabla tiene un millon de registros tons el query optimazer ( el optimizador de consultas que nadie lo ve pero que sin hacer bulla es el que ve la mejor manera de ejecutar una consulta  :kicking: ) tons se hara la lectura del millon de registros uno por uno.(que les parece eso  :angry: ).

bueno creo que me extendi un poco <_<  pero para mas info sobre todo ( espero no haberlos mareado con este testamento  :blink: ) ahi tenemos muchos articulos y muchos buscadores donde leer  :rolleyes:

Saludos a todos  :hola:

jebado

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Re: Coincidencia De Palabras Almacenadas
« Respuesta #7 en: Jueves 28 de Octubre de 2004, 22:00 »
0
Para escribir un libro, Timpsoft. Si señor muchas gracias
 :hola: