viernes, 19 de agosto de 2011

Descubriendo Sqlite

Después de buscar alguna forma de tener una base de datos para mis programas que no tuviese que ser instalada como servidor ya que como se han de imaginar los problemas que causaría para la mayoría de sus clientes cada vez que tuvieran un mal rato con su pc y no pudieran recuperar datos fácilmente como lo es el tan deseado copy&paste y los tuviesen que llamar para hacer el respaldo correctamente, y aun después de la reparación de la pc instalar nuevamente el servidor de la base de datos y terminar con una tarde perdida y poco productiva, pues doy por concluida mi búsqueda con SQLite, miren:


Es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente pequeña (~275 kiB)2 biblioteca en C. SQLite es un proyecto de dominio público1 creado por D. Richard Hipp.
A diferencia de los sistema de gestión de bases de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. El programa utiliza la funcionalidad de SQLite a través de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son más eficientes que la comunicación entre procesos. El conjunto de la base de datos (definiciones, tablas, índices, y los propios datos), son guardados como un sólo fichero estándar en la máquina host. Este diseño simple se logra bloqueando todo el fichero de base de datos al principio de cada transacción.
En su versión 3, SQLite permite bases de datos de hasta 2 Terabytes de tamaño, y también permite la inclusión de campos tipo BLOB.
El autor de SQLite ofrece formación, contratos de soporte técnico y características adicionales como compresión y cifrado.