SlideShare ist ein Scribd-Unternehmen logo
1 von 6
SQLite

SQLite es un proyecto de dominio público, su creador es D. Richard Hipp, el cual
implementa una pequeña librería de aproximadamente 500kb, programado en el
lenguaje C, de dominio público, totalmente libre y que tiene con función hacer de un
sistemas de bases de datos relacional.

implementa un completo motor de base de datos multiplataforma que no precisa
configuración. Se distribuye bajo licencia de dominio público.

"SQLite es un sistema de gestión de base de datos, un ´gran archivador´ que permite
consultar, agregar, modificar y eliminar dentro de una base de datos". Así, se puede
seleccionar rápidamente los fragmentos de información que se necesiten

SQLlite es una pequeña librería programada en lenguaje C que implementa un
completo motor de base de datos multiplataforma que no precisa configuración. Se
distribuye bajo licencia de dominio público. Es muy rápido y la ventaja fundamental es
que permite utilizar un amplio subconjunto del lenguaje estándar SQL. SQLite destaca
también por su versatilidad. El motor de PHP 5 incluye soporte interno para SQLite.
Combina el motor y el interfaz de la base de datos en una única biblioteca, y almacena
los datos en un único archivo de texto plano. Esto hace que cada usuario pueda crear
tantas bases de datos como desee sin la necesidad de la intervención de un
administrador de bases de datos que gestione los espacios de trabajo, usuarios y
permisos de acceso. El hecho de almacenar toda la base de datos en un único archivo,
facilita la portabilidad de los datos, y solamente tiene la restricción del espacio de
disco asignado al usuario en el servidor. Su potencia se basa fundamentalmente en la
simplicidad, lo que hace que no sea una buena solución en entornos de tráfico muy
elevado y/o alto acceso concurrente a datos. SQLite encapsula toda la base de datos
en un único fichero. En su versión 3, SQLite soporta bases de datos de hasta 2
Terabytes de tamaño, y también permite la inclusión de campos tipo Blob.
Recomendaciones Para el correcto aprovechamiento de esta utilidad es necesario por
parte del usuario tener los siguientes conocimientos:
• Creación de paginas web ( HTML, etc … ).
• PHP.
• Conocimientos de bases de datos ( SQL ).
Formas de uso Podemos utilizar SQLite de dos formas:
• Como gestor de base de datos local en un PC. De esta forma podemos gestionar
bases de datos con SQLite igual que si estuviéramos trabajando con un sistema gestor
de base de datos como MySQL sin necesidad de instalar nada, ya que SQLite se
compone de un único archivo ejecutable.
• Como una extensión más de PHP, utilizando las funcionalidades de SQLite
configuradas, o bien como módulo de PHP, o como librería; sin necesidad de tener
instalado o conectar con un servidor de base de datos. Ofrece un rápido interfaz de
base de datos almacenado en archivo de texto plano.
SQLite como extensión de PHP Una de las opciones de utilización de SQLite es como
extensión de base de datos para PHP. Esta opción, ofrece un rápido interfaz de base de
datos, al igual que ofrecen otras bases de datos como MySQL, pero con la ventaja de
no tener la necesidad de tener instalado o conectar con un servidor de base de datos.
SQLite tiene prácticamente las mismas funcionalidades y rapidez que el resto de
gestores de base de datos, y los datos se almacenan en un archivo de texto plano.

Caracteristicas

   1. SQLite no necesita ser "instalado" antes de que se utilice. No hay un "setup"
       procedimiento. No hay ningún proceso de servidor que debe ser arrancados,
       detenidos o configurado. No hay necesidad de un administrador para crear una
       nueva instancia de base de datos o asignar permisos de acceso para los
       usuarios. SQLite no utiliza los archivos de configuración
   2. La mayoría de los motores de base de datos SQL se ejecutan como un proceso
       de servidor. Los programas que desee acceder a la base de datos comunicarse
       con el servidor utilizando algún tipo de la comunicación (normalmente TCP / IP)
       para enviar peticiones al servidor y recibir de vuelta los resultados.
   SQLite no funciona de esta manera.
   Con SQLite, el proceso que quiere acceder a la base de datos lee y escribe
   directamente de los archivos de base de datos en el disco.
   No hay ningún proceso de servidor intermediario.

   3. El formato de archivo SQLite es multiplataforma.
      Un archivo de base de datos escrita en una máquina puede ser copiado y
      utilizado en un equipo diferente con una arquitectura diferente.
      Big-endian o little-endian, 32-bit o 64-bits no importa.
      El término inglés endianness ("extremidad") designa el formato en el que se
      almacenan los datos de más de un byte en un ordenador.
      Todas las máquinas usan el mismo formato de archivo. Además, los
      desarrolladores se han comprometido a mantener el formato de archivo
      compatible y estable, por lo que las nuevas versiones de SQLite pueden leer y
      escribir archivos de base de datos de más edad
   4. CODIGO FUENTE
      El código fuente de SQLite está diseñado para ser legible y accesible para el
      programador medio.Todos los procedimientos y estructuras de datos y muchas
      las variables automáticas son cuidadosamente comentado con información útil
      sobre lo que hacen.


Combina el motor y el interfaz de la base de datos en una única biblioteca, y almacena
los datos en un único archivo de texto plano. Esto hace que cada usuario pueda crear
tantas bases de datos como desee sin la necesidad de la intervención de un
administrador de bases de datos que gestione los espacios de trabajo, usuarios y
permisos de acceso. El hecho de almacenar toda la base de datos en un único archivo,
facilita la portabilidad de los datos, y solamente tiene la restricción del espacio de
disco asignado al usuario en el servidor.

Grandes empresas como Adobe, Firefox, Google, McAfee, Toshiba, Sun Microsystem,
Symbian, Microsoft, etc. hacen uso de SQLite para el desarrollo de mucho de sus
productos

Una de las primeras diferencia entre los motores de Bases de datos convencionales es
su arquitectura cliente/servidor, pues SQLite es independiente, simplemente se
realizan llamadas a sub rutinas o funciones de las propias librerías de SQLite, lo cual
reduce ampliamente la latencia en cuanto al acceso a las bases de datos. Con lo cual
podemos decir que las base de datos compuesta por la definición de las tablas, índices
y los propios datos son guardados por un solo fichero estándar y en un solo ordenador.

 Su potencia se basa fundamentalmente en la simplicidad, lo que hace que no sea una
buena solución en entornos de tráfico muy elevado y/o alto acceso concurrente a
datos. SQLite encapsula toda la base de datos en un único fichero.



VENTAJAS

No requiere configuración

No se requiere uso de servidor (proceso activo para atender las peticiones)

Fácilmente portable (multiplataforma Windows, Linux, Mac, dispositivos mobiles,
tablet´s, etc.)

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.

Acceso mucho más rápido.

Prácticamente cualquier lenguaje y SO lo soportan.

Registros de Longitud Variable

Único archivo de Base de Datos
Tamaño: SQLite 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: SQLite 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: SQLite es compatible con ACID, reunión de los cuatro criterios de
Atomicidad, Consistencia, Aislamiento y Durabilidad.

SQL: implementa un gran subconjunto de la ANSI – 92 SQL estándar, incluyendo sub-
consultas, generación de usuarios, vistas y triggers.

Interfaces: cuenta con diferentes interfaces del API, las cuales permiten trabajar con
C++, PHP, Perl, Python, Ruby, Tcl, groovy, etc.

Costo: SQLite es de dominio público, y por tanto, es libre de utilizar para cualquier
propósito sin costo y se puede redistribuir libremente.

No posee configuración

De la forma en que fue creado y diseñado SQLite, NO necesita ser instalado. NO
prender, reiniciar o apagar un servidor, e incluso 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.

Registros de longitud variable: 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.

DESVENTAJAS

Limitaciones en Where: esta limitación está dada por el soporte para clausuras
anidadas.

Falta de Clave Foránea: se hace caso omiso de las claves foráneas; esto quiere decir,
cuando se realice la creación de la tabla desde el modo consola, está permitiendo el
uso de la clausura, aunque no realizara el chequeo de la misma.

Falta de documentación en español: si bien ya contamos con una comunidad latino
americana de SQLite, sería importante encontrar mucha más documentación, libros,
review, etc. como muchos otros motores de bases de datos cuentan hoy en día.
CLASIFICACIÓN DE LOS COMANDOS


Comando           descripción
CREATE            Utilizado para crear nuevas tablas, procedimientos
                  almacenados e índices

DROP              Empleado para eliminar tablas, procedimientos
                  almacenados e índices
ALTER             Utilizado para modificar las tablas agregando campos o
                  cambiando la definición de los campos

SELECT            Utilizado para consultar registros de la base de datos que
                  satisfagan un criterio determinado.

INSERT            Utilizado para cargar lotes de datos en la base de datos
                  en una única operación.
UPDATE            Utilizado para modificar los valores de los campos y
                  registros especificados.
DELETE            Utilizado para eliminar registros de una tabla de una
                  base de datos.




APLICACIONES

    Mozilla Firefox la utiliza para almacenar, por ejemplo, las cookies, los favoritos,
     el historial, etc. Se está considerando también utilizar SQLite en Mozilla
     Calendar y Mozilla Thunderbird.

    Yum, la herramienta de gestión de paquetes de Fedora Core, ha cambiado a
     SQLite y pysqlite para el almacenamiento de datos y parseo de XML desde el
     núcleo de Fedora 4.

    Open Outlook Connector, un conector open source de Microsoft Outlook/MAPI
     ha sido hecho usando SQLite.

    Varias aplicaciones de Apple utilizan SQLite, incluyendo Apple Mail y el gestor
     de RSS que se distribuye con OS X. El software Aperture de Apple guarda la
     información de las imágenes en una base de datos SQLite, utilizando la API Core
     Data.
Concurrencia

La concurrencia de SQLite, es el concepto que se refiere a la capacidad de SQLite para
permitir que diversos usuarios hagan uso de la misma base de datos con poca o
ninguna diferencia de tiempo. SQLite es un sistema que se considera de baja
concurrencia.

Pueden haber múltiples usuarios leyendo una base de datos, pero solamente un
usuario que escriba datos a la vez. SQLite bloquea la base de datos durante la escritura
y nadie tiene permitido el acceso durante el tiempo que dura la operación. Por lo
general, SQLite mantiene el bloqueo durante unos pocos milisegundos. Como
consecuencia, si una aplicación va a necesitar una alta concurrencia de escritura de
datos siendo el tiempo un factor crítico, debe considerarse otro sistema de gestión de
datos más robusto cuyo diseño sea expresamente para múltiples usuarios o de alta
concurrencia

Weitere ähnliche Inhalte

Was ist angesagt? (20)

SQLite
SQLiteSQLite
SQLite
 
SQLite
SQLiteSQLite
SQLite
 
Gestores de bases de datos cuadros comparativos
Gestores de bases de datos cuadros comparativosGestores de bases de datos cuadros comparativos
Gestores de bases de datos cuadros comparativos
 
Sq lite
Sq liteSq lite
Sq lite
 
Cuadro Comparativo
Cuadro ComparativoCuadro Comparativo
Cuadro Comparativo
 
Ventajas y desventajas mysql
Ventajas y desventajas mysqlVentajas y desventajas mysql
Ventajas y desventajas mysql
 
Cuadro comparativo sql
Cuadro comparativo sqlCuadro comparativo sql
Cuadro comparativo sql
 
Comparacion entre my sql y sql server
Comparacion entre my sql y sql serverComparacion entre my sql y sql server
Comparacion entre my sql y sql server
 
Oracle vs. sql server terminado
Oracle vs. sql server   terminadoOracle vs. sql server   terminado
Oracle vs. sql server terminado
 
Comparaciones entre SGBD
Comparaciones entre SGBD Comparaciones entre SGBD
Comparaciones entre SGBD
 
Sq lite
Sq liteSq lite
Sq lite
 
Sql Server
Sql ServerSql Server
Sql Server
 
Motor De Bases De Datos Oracle
Motor De Bases De Datos OracleMotor De Bases De Datos Oracle
Motor De Bases De Datos Oracle
 
ANSI SQL
ANSI SQLANSI SQL
ANSI SQL
 
Versiones de sql
Versiones de sqlVersiones de sql
Versiones de sql
 
Exposicionsqlite1 (1)
Exposicionsqlite1 (1)Exposicionsqlite1 (1)
Exposicionsqlite1 (1)
 
Sql sever 2008
Sql sever 2008Sql sever 2008
Sql sever 2008
 
Base de Datos
Base de DatosBase de Datos
Base de Datos
 
Características de MySQL
Características de MySQLCaracterísticas de MySQL
Características de MySQL
 
Open office base y sus caracteristicas
Open office base y sus caracteristicasOpen office base y sus caracteristicas
Open office base y sus caracteristicas
 

Andere mochten auch (20)

Agenda cultural octubre 24
Agenda cultural octubre 24 Agenda cultural octubre 24
Agenda cultural octubre 24
 
comida
comidacomida
comida
 
Dn11 c.inquisicion.vrg_
Dn11 c.inquisicion.vrg_Dn11 c.inquisicion.vrg_
Dn11 c.inquisicion.vrg_
 
Software libre
Software libreSoftware libre
Software libre
 
Presentación WEB 2.0, YOUTUBE, SLIDESHARE
Presentación WEB 2.0, YOUTUBE, SLIDESHAREPresentación WEB 2.0, YOUTUBE, SLIDESHARE
Presentación WEB 2.0, YOUTUBE, SLIDESHARE
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Ativ 1 8 Andreia
Ativ 1 8 AndreiaAtiv 1 8 Andreia
Ativ 1 8 Andreia
 
Ativ3 9 Mariles
Ativ3 9 MarilesAtiv3 9 Mariles
Ativ3 9 Mariles
 
Examen de computacion
Examen de computacionExamen de computacion
Examen de computacion
 
Leccion03 1t
Leccion03 1tLeccion03 1t
Leccion03 1t
 
Historia de la tierra1
Historia de la tierra1Historia de la tierra1
Historia de la tierra1
 
Amor y belleza
Amor y bellezaAmor y belleza
Amor y belleza
 
Ofimatica
OfimaticaOfimatica
Ofimatica
 
Formulasdeexel
FormulasdeexelFormulasdeexel
Formulasdeexel
 
Recursos tecnologicos que_mas_han_impactado_mi
Recursos tecnologicos que_mas_han_impactado_miRecursos tecnologicos que_mas_han_impactado_mi
Recursos tecnologicos que_mas_han_impactado_mi
 
Clarinet 1
Clarinet 1Clarinet 1
Clarinet 1
 
COLOMBIA TECNOLOGICA
COLOMBIA TECNOLOGICACOLOMBIA TECNOLOGICA
COLOMBIA TECNOLOGICA
 
La web 2
La web 2La web 2
La web 2
 
EVALUACION
EVALUACIONEVALUACION
EVALUACION
 
Candidatura PP 2007
Candidatura PP 2007Candidatura PP 2007
Candidatura PP 2007
 

Ähnlich wie SQLite: Una base de datos ligera y portable

A1 u2 hipv
A1 u2 hipvA1 u2 hipv
A1 u2 hipvhmpv18
 
Sistema gestor de base de datos
Sistema gestor de base de datosSistema gestor de base de datos
Sistema gestor de base de datoskarlaaponte
 
Bases de datos mysql
Bases de datos mysqlBases de datos mysql
Bases de datos mysqlJared Torres
 
Gestores de Base de Datos
Gestores de Base de DatosGestores de Base de Datos
Gestores de Base de DatosRedrobanA
 
Gestores de base de datos
Gestores de base de datosGestores de base de datos
Gestores de base de datosaclle
 
Gestores de base de datos
Gestores de base de datosGestores de base de datos
Gestores de base de datosaclle
 
Sistema.inventario@hotmail.com
Sistema.inventario@hotmail.comSistema.inventario@hotmail.com
Sistema.inventario@hotmail.comsimeon
 
Base de Datos Relacional
Base de Datos RelacionalBase de Datos Relacional
Base de Datos Relacionalherhard
 
Diferencias entre los SGBD´s
Diferencias entre los SGBD´sDiferencias entre los SGBD´s
Diferencias entre los SGBD´sDiego Silva Viera
 
Principales bases de datos existentes
Principales bases de datos existentesPrincipales bases de datos existentes
Principales bases de datos existentesLuis Briones
 
motor de base de datos
motor de base de datosmotor de base de datos
motor de base de datosRAYMUNDO21
 

Ähnlich wie SQLite: Una base de datos ligera y portable (20)

Sqlite
SqliteSqlite
Sqlite
 
Sq lite
Sq liteSq lite
Sq lite
 
Gestores
GestoresGestores
Gestores
 
A1 u2 hipv
A1 u2 hipvA1 u2 hipv
A1 u2 hipv
 
Sistema gestor de base de datos
Sistema gestor de base de datosSistema gestor de base de datos
Sistema gestor de base de datos
 
Servidor mysql
Servidor mysqlServidor mysql
Servidor mysql
 
Gbd2
Gbd2Gbd2
Gbd2
 
Bases de datos mysql
Bases de datos mysqlBases de datos mysql
Bases de datos mysql
 
Gestores de Base de Datos
Gestores de Base de DatosGestores de Base de Datos
Gestores de Base de Datos
 
Gestores de base de datos
Gestores de base de datosGestores de base de datos
Gestores de base de datos
 
Gestores de base de datos
Gestores de base de datosGestores de base de datos
Gestores de base de datos
 
Sistema.inventario@hotmail.com
Sistema.inventario@hotmail.comSistema.inventario@hotmail.com
Sistema.inventario@hotmail.com
 
Tipos de base de datos
Tipos de base de datosTipos de base de datos
Tipos de base de datos
 
Base de Datos Relacional
Base de Datos RelacionalBase de Datos Relacional
Base de Datos Relacional
 
Tipos de Bases de datos
Tipos de Bases de datosTipos de Bases de datos
Tipos de Bases de datos
 
Diferencias entre los SGBD´s
Diferencias entre los SGBD´sDiferencias entre los SGBD´s
Diferencias entre los SGBD´s
 
Principales bases de datos existentes
Principales bases de datos existentesPrincipales bases de datos existentes
Principales bases de datos existentes
 
Gestor de base de datos
Gestor de base de datosGestor de base de datos
Gestor de base de datos
 
motor de base de datos
motor de base de datosmotor de base de datos
motor de base de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 

SQLite: Una base de datos ligera y portable

  • 1. SQLite SQLite es un proyecto de dominio público, su creador es D. Richard Hipp, el cual implementa una pequeña librería de aproximadamente 500kb, programado en el lenguaje C, de dominio público, totalmente libre y que tiene con función hacer de un sistemas de bases de datos relacional. implementa un completo motor de base de datos multiplataforma que no precisa configuración. Se distribuye bajo licencia de dominio público. "SQLite es un sistema de gestión de base de datos, un ´gran archivador´ que permite consultar, agregar, modificar y eliminar dentro de una base de datos". Así, se puede seleccionar rápidamente los fragmentos de información que se necesiten SQLlite es una pequeña librería programada en lenguaje C que implementa un completo motor de base de datos multiplataforma que no precisa configuración. Se distribuye bajo licencia de dominio público. Es muy rápido y la ventaja fundamental es que permite utilizar un amplio subconjunto del lenguaje estándar SQL. SQLite destaca también por su versatilidad. El motor de PHP 5 incluye soporte interno para SQLite. Combina el motor y el interfaz de la base de datos en una única biblioteca, y almacena los datos en un único archivo de texto plano. Esto hace que cada usuario pueda crear tantas bases de datos como desee sin la necesidad de la intervención de un administrador de bases de datos que gestione los espacios de trabajo, usuarios y permisos de acceso. El hecho de almacenar toda la base de datos en un único archivo, facilita la portabilidad de los datos, y solamente tiene la restricción del espacio de disco asignado al usuario en el servidor. Su potencia se basa fundamentalmente en la simplicidad, lo que hace que no sea una buena solución en entornos de tráfico muy elevado y/o alto acceso concurrente a datos. SQLite encapsula toda la base de datos en un único fichero. En su versión 3, SQLite soporta bases de datos de hasta 2 Terabytes de tamaño, y también permite la inclusión de campos tipo Blob. Recomendaciones Para el correcto aprovechamiento de esta utilidad es necesario por parte del usuario tener los siguientes conocimientos: • Creación de paginas web ( HTML, etc … ). • PHP. • Conocimientos de bases de datos ( SQL ). Formas de uso Podemos utilizar SQLite de dos formas: • Como gestor de base de datos local en un PC. De esta forma podemos gestionar bases de datos con SQLite igual que si estuviéramos trabajando con un sistema gestor de base de datos como MySQL sin necesidad de instalar nada, ya que SQLite se compone de un único archivo ejecutable. • Como una extensión más de PHP, utilizando las funcionalidades de SQLite configuradas, o bien como módulo de PHP, o como librería; sin necesidad de tener instalado o conectar con un servidor de base de datos. Ofrece un rápido interfaz de base de datos almacenado en archivo de texto plano.
  • 2. SQLite como extensión de PHP Una de las opciones de utilización de SQLite es como extensión de base de datos para PHP. Esta opción, ofrece un rápido interfaz de base de datos, al igual que ofrecen otras bases de datos como MySQL, pero con la ventaja de no tener la necesidad de tener instalado o conectar con un servidor de base de datos. SQLite tiene prácticamente las mismas funcionalidades y rapidez que el resto de gestores de base de datos, y los datos se almacenan en un archivo de texto plano. Caracteristicas 1. SQLite no necesita ser "instalado" antes de que se utilice. No hay un "setup" procedimiento. No hay ningún proceso de servidor que debe ser arrancados, detenidos o configurado. No hay necesidad de un administrador para crear una nueva instancia de base de datos o asignar permisos de acceso para los usuarios. SQLite no utiliza los archivos de configuración 2. La mayoría de los motores de base de datos SQL se ejecutan como un proceso de servidor. Los programas que desee acceder a la base de datos comunicarse con el servidor utilizando algún tipo de la comunicación (normalmente TCP / IP) para enviar peticiones al servidor y recibir de vuelta los resultados. SQLite no funciona de esta manera. Con SQLite, el proceso que quiere acceder a la base de datos lee y escribe directamente de los archivos de base de datos en el disco. No hay ningún proceso de servidor intermediario. 3. El formato de archivo SQLite es multiplataforma. Un archivo de base de datos escrita en una máquina puede ser copiado y utilizado en un equipo diferente con una arquitectura diferente. Big-endian o little-endian, 32-bit o 64-bits no importa. El término inglés endianness ("extremidad") designa el formato en el que se almacenan los datos de más de un byte en un ordenador. Todas las máquinas usan el mismo formato de archivo. Además, los desarrolladores se han comprometido a mantener el formato de archivo compatible y estable, por lo que las nuevas versiones de SQLite pueden leer y escribir archivos de base de datos de más edad 4. CODIGO FUENTE El código fuente de SQLite está diseñado para ser legible y accesible para el programador medio.Todos los procedimientos y estructuras de datos y muchas las variables automáticas son cuidadosamente comentado con información útil sobre lo que hacen. Combina el motor y el interfaz de la base de datos en una única biblioteca, y almacena los datos en un único archivo de texto plano. Esto hace que cada usuario pueda crear
  • 3. tantas bases de datos como desee sin la necesidad de la intervención de un administrador de bases de datos que gestione los espacios de trabajo, usuarios y permisos de acceso. El hecho de almacenar toda la base de datos en un único archivo, facilita la portabilidad de los datos, y solamente tiene la restricción del espacio de disco asignado al usuario en el servidor. Grandes empresas como Adobe, Firefox, Google, McAfee, Toshiba, Sun Microsystem, Symbian, Microsoft, etc. hacen uso de SQLite para el desarrollo de mucho de sus productos Una de las primeras diferencia entre los motores de Bases de datos convencionales es su arquitectura cliente/servidor, pues SQLite es independiente, simplemente se realizan llamadas a sub rutinas o funciones de las propias librerías de SQLite, lo cual reduce ampliamente la latencia en cuanto al acceso a las bases de datos. Con lo cual podemos decir que las base de datos compuesta por la definición de las tablas, índices y los propios datos son guardados por un solo fichero estándar y en un solo ordenador. Su potencia se basa fundamentalmente en la simplicidad, lo que hace que no sea una buena solución en entornos de tráfico muy elevado y/o alto acceso concurrente a datos. SQLite encapsula toda la base de datos en un único fichero. VENTAJAS No requiere configuración No se requiere uso de servidor (proceso activo para atender las peticiones) Fácilmente portable (multiplataforma Windows, Linux, Mac, dispositivos mobiles, tablet´s, etc.) 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. Acceso mucho más rápido. Prácticamente cualquier lenguaje y SO lo soportan. Registros de Longitud Variable Único archivo de Base de Datos
  • 4. Tamaño: SQLite 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: SQLite 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: SQLite es compatible con ACID, reunión de los cuatro criterios de Atomicidad, Consistencia, Aislamiento y Durabilidad. SQL: implementa un gran subconjunto de la ANSI – 92 SQL estándar, incluyendo sub- consultas, generación de usuarios, vistas y triggers. Interfaces: cuenta con diferentes interfaces del API, las cuales permiten trabajar con C++, PHP, Perl, Python, Ruby, Tcl, groovy, etc. Costo: SQLite es de dominio público, y por tanto, es libre de utilizar para cualquier propósito sin costo y se puede redistribuir libremente. No posee configuración De la forma en que fue creado y diseñado SQLite, NO necesita ser instalado. NO prender, reiniciar o apagar un servidor, e incluso 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. Registros de longitud variable: 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. DESVENTAJAS Limitaciones en Where: esta limitación está dada por el soporte para clausuras anidadas. Falta de Clave Foránea: se hace caso omiso de las claves foráneas; esto quiere decir, cuando se realice la creación de la tabla desde el modo consola, está permitiendo el uso de la clausura, aunque no realizara el chequeo de la misma. Falta de documentación en español: si bien ya contamos con una comunidad latino americana de SQLite, sería importante encontrar mucha más documentación, libros, review, etc. como muchos otros motores de bases de datos cuentan hoy en día.
  • 5. CLASIFICACIÓN DE LOS COMANDOS Comando descripción CREATE Utilizado para crear nuevas tablas, procedimientos almacenados e índices DROP Empleado para eliminar tablas, procedimientos almacenados e índices ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado. INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación. UPDATE Utilizado para modificar los valores de los campos y registros especificados. DELETE Utilizado para eliminar registros de una tabla de una base de datos. APLICACIONES  Mozilla Firefox la utiliza para almacenar, por ejemplo, las cookies, los favoritos, el historial, etc. Se está considerando también utilizar SQLite en Mozilla Calendar y Mozilla Thunderbird.  Yum, la herramienta de gestión de paquetes de Fedora Core, ha cambiado a SQLite y pysqlite para el almacenamiento de datos y parseo de XML desde el núcleo de Fedora 4.  Open Outlook Connector, un conector open source de Microsoft Outlook/MAPI ha sido hecho usando SQLite.  Varias aplicaciones de Apple utilizan SQLite, incluyendo Apple Mail y el gestor de RSS que se distribuye con OS X. El software Aperture de Apple guarda la información de las imágenes en una base de datos SQLite, utilizando la API Core Data.
  • 6. Concurrencia La concurrencia de SQLite, es el concepto que se refiere a la capacidad de SQLite para permitir que diversos usuarios hagan uso de la misma base de datos con poca o ninguna diferencia de tiempo. SQLite es un sistema que se considera de baja concurrencia. Pueden haber múltiples usuarios leyendo una base de datos, pero solamente un usuario que escriba datos a la vez. SQLite bloquea la base de datos durante la escritura y nadie tiene permitido el acceso durante el tiempo que dura la operación. Por lo general, SQLite mantiene el bloqueo durante unos pocos milisegundos. Como consecuencia, si una aplicación va a necesitar una alta concurrencia de escritura de datos siendo el tiempo un factor crítico, debe considerarse otro sistema de gestión de datos más robusto cuyo diseño sea expresamente para múltiples usuarios o de alta concurrencia