Ir al contenido principal

Search MF... search!

Trabajando con los muchachos hemos estado poniendo a punto un mini interprete de SQL para SQL Server. Esto ha dado lugar a una pequeña librería SearchComponent. Lo que queremos hacer es lo siguiente:

  1. Definir en una libreria de Search que queremos buscar en la tabla X, columnas A, B y C.

  2. Tener consultas del estilo: a=Madrid & b=45:56 para decir por ejemplo que filtre en la columna a con un LIKE a Madrid y la columna b con un BETWEEN entre 45 y 56.

  3. Finalmente, obtener el DataSet resultante y mostrarlo.


Por fin tenemos un pequeño prototipo que se puede utilizar y que quisieramos compartir. Esta en forma de un articulo en codeproject:
En el articulo se explica la libreria y de donde sale todo. En este site, para los lectores les damos un ZIP listingo para probarlo:

  1. Crear una base de datos en SQL Server que se llame searching

  2. Restaurarla con el BAK que se encuentra en el ZIP

  3. Abrir, compilar y ejecutar el website en el ZIP para ver la magia


El ejemplo que les paso tiene la siguiente estructura en la base de datos:

Algunos ejemplos de lo que deberian ver estan aqui:

  • Buscar todos los articulos que tienen en la descripcion 'crema nivea'


  • Observe que con FTS se encuentran todas las variaciones.

  • Buscar que antigripales se vendieron en 2008



Como dice... sky is the limit.
Espero les guste.

Comentarios

Entradas más populares de este blog

Protocolos, qué son?

 En el pasado (y en el presente también) siempre he querido incluir en el contenido de la materia de estructura de datos la posibilidad de hacer un práctico que tenga que ver con redes. Este breve artículo trata de cómo se pueden conectar dos computadoras en red y de las bases por las cuales tenemos protocolos. Veremos: Significado de las direcciones IP y conceptos muy básicos de redes Cómo usar sockets para abrir canales de comnicación entre dos computadoras Concepto de un protocolo y de cómo podemos usar uno para hacer un chat básico Conceptos básicos de redes Si eres de sistemas o te interesan las computadoras pues probablemnte el concepto de conectar dos computadoras en la red parece algo tan sencillo como respirar. Sin embargo, hasta mediados de los 90 era algo que: 1) era complejo; 2) tenía atisbos de magia negra. Por suerte con el tiempo esto se ha ido masificando y ahora es algo muy sencillo. Para poder conectarnos con otra computadora debemos conocer la dirección y el puerto d

Nuget muy grande en tu carpeta personal

Problema : Veo que mi disco duro C ha crecido bastante y necesito espacio. Cuando veo que una carpeta .nuget dentro de mi cuenta de usuario tiene 15 GB. Solución : Esa carpeta existe como cache para que VS no busque el paquete cada vez desde la web. Entonces, la solución consiste en los siguientes pasos. Listar cuales son los folders o contenedores de estos paquetes nuget dotnet nuget locals all --list http-cache: <USER>\AppData\Local\NuGet\v3-cache global-packages: <USER>\.nuget\packages\ temp: <USER>\AppData\Local\Temp\NuGetScratch plugins-cache: <USER>\AppData\Local\NuGet\plugins-cache Limpiar las direcciones que tienen estos paquetes nuget con el utilitario de nuget dotnet nuget locals http-cache --clear Clearing NuGet HTTP cache: C:\Users\Vladimir\AppData\Local\NuGet\v3-cache Local resources cleared. y así para cada uno de los locals que se ve en la lista anterior. Luego se debe cambiar las variables de entorno para que esto no nos vuelva a pasar. Como se

Hangfire, si no lo estás usando, estás haciendo algo mal (.NET world)

Hangfire es una librería espectacular que permite encolar tareas en un servidor de tareas que funciona dentro de tu aplicación web. Existen varios tutoriales que muestran de manera bastante sencilla cómo puedes ir integrando esto a tu aplicación. En esta publicación vamos a repetir, pero en español, y sobretodo vamos a tratar de ir lo más al punto posible. Qué es? Es una librería que la cargas a través de NUGET como cualquier otra librería. En realidad tenemos que cargar 3 librerías pero eso lo veremos más adelante. Una vez que hayas cargado todo lo necesario en tu aplicación web tendrás lo siguiente: Un servidor de colas : es decir, un lugar al cual le puedes mandar hacer cosas y no se olvida de esas cosas y las va ejecutando a medida que puede o tiene tiempo. Esto es muy útil para que tu aplicación no pierda tiempo haciendo algo que no necesita realmente hacer en ese instante y devolver más rápido al usuario final. Un tablero de control de colas : una serie de