SQL Server dispone de una versión embebida que es tan interesante como desconocida y poco utilizada. Se trata de SQL Server Compact Edition. La mayor parte de la gente la desecha como opción porque la asocia con crear aplicaciones para dispositivos móviles (como PDAs o teléfonos), pero lo cierto es que tiene una cantidad espectacular de aplicaciones en entornos de escritorio.
Para empezar esta versión ligera de SQL Server es gratuita y compatible con su hermano mayor, con multitud de características avanzadas como SGBD. No necesita tener instalado un servicio permanentemente en ejecución en el sistema y es extremadamente ligera (tanto que puedes usarla en un teléfono, así que eso lo dice todo). Una de las características más interesantes es la de todas las opciones de sincronización que ofrece, que nos permiten replicar y mantener en sincronismo datos entre sistemas homogéneos, por lo que la hace ideal para aplicaciones que deban trabajar conectadas de forma no permanente y para almacenamiento local.
Se le puede sacar partido para multitud de casos. Por ejemplo, imagínate una aplicación de TPV (ventas por terminal) que se usa en una red de tiendas y que almacena sus datos en una base de datos central. ¿Qué pasa cuando falla la conexión a Internet? ¿Te vas a quedar sin poder facturar?. Obviamente no. Pues en este caso SQL Server Compact es un gran aliado ya que te permitiría implementar en tu TPV de manera sencilla una solución de almacenamiento local sin instalación compatible con SQL Server que funcionase cuando no hay conexión y que sincronizase de manera automática los datos cuando vuelva a haber conectividad.
En general cualquier situación que requiera un almacenamiento avanzado, incluso con simultaneidad de acceso por parte de varios usaurios, pero que no justifique el hecho de instalar un SQL Server completo es el lugar apropiado para usar SQL Server Compact.
Y la aparición del Service Pack 1 para este entorno con la inclusión de soporte para Entity Framework o posibilidad de usarla en entornos de 64 bits la hacen más potente todavía.
Total, que el hecho de que esta BD sea tan infrautilizada nos ha llevado a sacar desde Krasis Press un nuevo libro específicamente dedicado al tema (y el más grande que hemos hecho hasta el momento, con bastante más de 400 páginas). Su autor, José Miguel Torres, es un gran experto en este campo con muchos años de experiencia real en este tipo de aplicaciones de Smart Client comentados. Además el libro se ha concebido como una referencia completa que inluye todo lo que necesitas para dominar el entorno: desde su puesta en marcha y utilización, hasta su despliegue en entornos de producción, pasando por utilización, el lenguaje SQL, su acceso con ADO.NET 3.5, entornos de sincronización y todo tipo de conceptos sobre arquitectura de aplicaciones. Incluye por supuesto las novedades del SP1 aparecido esta misma semana. ¡Más fresco imposible! :-)
Desde mi punto de vista un "must have" que todo programador de .NET debería conocer.
En la página del libro en Krasis Press tenéis toda la información, incluyendo un completo índice e introducción y el código fuente de ejemplo completo. Si lo compras te lo enviamos a casa por mensajero gratuitamente (dentro de la península) :-)