3. Es un sistema de gestión de bases de datos relacional que a diferencia de los
sistemas de gestión de base de datos cliente-servidor, su motor 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.
4. 1) La biblioteca implementa la mayor parte del estándar SQL, incluyendo transacciones
de base de datos atómicas, consistencia de base de datos, aislamiento, y durabilidad
y la mayor parte de las consultas complejas.
2) SQLITE usa un sistema de tipos inusual. En lugar de asignar un tipo a una columna
como en la mayor parte de los sistemas de bases de datos SQL, los tipos se asignan
a los valores individuales.
Por ejemplo, se puede insertar un STRING en una columna de tipo entero (a pesar de
que SQLITE tratará en primera instancia de convertir la cadena en un entero).
Algunos usuarios consideran esto como una innovación que hace que la base de datos
sea mucho más útil, sobre todo al ser utilizada desde un lenguaje de tipos dinámicos.
Otros usuarios lo ven como un gran inconveniente, ya que la técnica no es portable a
otras bases de datos SQL.
5. 3) Varios procesos o hilos pueden acceder a la misma base de datos
sin problemas.
4) Varios accesos de lectura pueden ser servidos en paralelo. Un
acceso de escritura sólo puede ser servido si no se está sirviendo
ningún otro acceso concurrentemente. En caso contrario, el acceso de
escritura falla devolviendo un código de error (o puede
automáticamente reintentarse hasta que expira un timeout
configurable).
6. Tamaño: Tiene una pequeña memoria y una única biblioteca es necesaria
para acceder a bases de datos, lo que lo hace ideal para aplicaciones de
bases de datos incorporadas.
Rendimiento de base de datos: Realiza operaciones de manera eficiente y
es más rápido que MySQL y PostgreSQL.
Portabilidad: Se ejecuta en muchas plataformas y sus bases de datos pueden
ser fácilmente portadas sin ninguna configuración o administración.
Estabilidad: Es compatible con ACID, reunión de los cuatro criterios de
Atomicidad, Consistencia, Aislamiento y Durabilidad.
7. Interfaces: cuenta con diferentes interfaces del API, las cuales permiten
trabajar con C++, PHP, Perl, Python, Ruby, Tcl, groovy, etc.
Costo: Es de dominio público, y por tanto, es libre de utilizar para cualquier
propósito sin costo y se puede redistribuir libremente.
8. De la forma en que fue creado y diseñado SQLITE, no necesita ser
instalado, no reiniciar o apagar un servidor, e incluso al configurarlo. Esta
cualidad permite que no haya un administrador de base de datos para
crear las tablas, vistas, asignar permisos. O bien la adopción de medidas
de recuperación de servidor por cada caída del sistema.
9. Puede ser ejecutado en diferentes sistemas operativos, como ser
Windows, Linux, BSD, Mac OS X, Solaris, HPUX,AIX o estar embebido en
muchos otros como QNX, VxWorks, Symbian, Palm OS, Windows CE. Se
pude notar que muchos de ellos trabajan a 16, 32 y 64 Bits. La portabilidad
no está dada en sí por el software, sino por la base de datos condensada
en un solo fichero, que puede estar situado en cualquier directorio,
trayendo como ventaja que la base de datos puede ser fácilmente copiada
a algún dispositivo USB o ser enviada vía correo electrónico.
10. Generalmente los motores asignan una cantidad fija de espacio en disco para cada
fila en la mayoría de los campos de una determinada tabla. Por ejemplo,
tomemos un campo de tipo VARCHAR(255), esto significa que el motor le
asignará 255 bytes de espacio fijo en disco, independientemente de la
cantidad de información que se almacene en ese campo. En cambio, SQLite
aplica su tecnología y realizará todo lo contrario, utilizando para ello la
cantidad de espacio en disco necesario para almacenar la información real del
campo. Tomando el ejemplo anterior, si quisiera almacenar un solo carácter en
un campo definido como VARCHAR(255), entonces un único byte de espacio
de disco se consume.
El uso de registros de longitud variable por SQLite, tiene una serie de ventajas,
entre ellas el resultado de un pequeño archivo de base de datos y optimización
de la velocidad de la misma, puesto que hay menos información desperdiciada
que leer y recorrer.
11. Tasi Software, S.A. de C.V.
Empresa de Consultoría en Sistemas, especializada en el Desarrollo de
Sistemas de Información. Manejando tres áreas de especializacion
SAP(ABAP y Funcional), Cognos(Afliados de Negocios) y Microsoft .Net
Localidad: México D.F.
Estado: D. Federal
Solicitudes: Mandar mail, Llamar por
teléfono para agendar cita.
Empresa: Tasi Software, S.A. de C.V.
Contacto: Mónica Castillo o Alicia Méndez
Teléfono: 26 43 64 51
Correo-E: recursoshumanos@tasisoft.co
m
12. Instalación de SQLite
1. Ir a la http://www.sqlite.org/download.html
2. Descarga la última versión del programa Sqlite 3_6_11.zip.
3. Crear un directorio (por ejemplo C: / sqlite3 "> c: sqlite3)
14. El uso de SQLite
Inicie el intérprete de línea de comandos (Cmd.exe):
15. A partir de aquí vamos a mostrar esto como sigue:
C: WINDOWS system32>
Cambiar un directorio escribiendo el siguiente
comando:
C:WINNTsystem32>cd c:sqlite3
16. Crear base de datos
Una base de datos puede ser abierto por el siguiente
comando:
C: sqlite3> sqlite3 mycds.sl3
Una extensión de archivo es arbitrario. El programa crea
una nueva base de datos si un archivo no existe.
C:sqlite3>sqlite3 mycds.sl3
17. Comandos de SQLite
Tenga en cuenta que el sistema ha cambiado a "sqlite>".
Indica que el programa está listo para ejecutar comandos
SQL. Un comando termina con un punto y coma. Con tan
sólo pulsar "Enter" permite introducir los comandos SQL
que abarcan varias
18. Cerrar base de datos
Tipo ".exit" o ".quit” para salir del programa:
sqlite>.exit
Creación de tablas
Veamos ahora crear una tabla con dos campos.
19. Tenga en cuenta la continuación del sistema en
líneas adicionales. A continuación se muestra un
ejemplo de tabla más compleja.
Tenga en cuenta que PRIMARY KEY es
AUTOINCREMENT por defecto.
20.
21.
22. Seleccionar un estado
Vamos a comprobar los resultados. Ejecute las siguientes
declaraciones.
sqlite>select * from Artists;
24. Si desea mostrar los encabezados del campo, ejecute el
siguiente “dot" de comandos.
sqlite>.headers ON
25. Selección de dos tablas
La siguiente instrucción SQL
sqlite>SELECT t1.ArtistName,CDs.Title FROM Artists t1, CDs WHERE
t1.ArtistID=CDs.ArtistID
26. Como la extensión más reciente de base de datos,
SQLite es la suerte de no tener el código herredado, a
diferencia de mayores extensiones tales como MySQL,
que debe mantener un comportamiento obsoletas por
razones de compatibilidad hacia atrás.