POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
SQLite
1. UNT-INFORMÁ TICA – BASE DE DATOS I
SQLITE
Karina Vanessa Chico Moscol Raisa Lisette Salvador Amaya MeihsiuTung
N°052700608 N° 0512701208 N° 052701008
Urb.El Bosque Urb. San Andrés V Etapa Urb. El Molino
Av.Honorio Delgado 1015 Mz S Lote 15 Av. Miraflores 960
(044) 948276136 (044) 949825184 (044) 948560868
kari1015_20@hotmail.com raisali_1@hotmail.com meihsiutung@hotmail.com
RESUMEN: El siguiente trabajo 2. HISTORIA
denominado SQLite fue elaborado por un
grupo de estudiantes del quinto ciclo de Cuando D. Richard Hipp trabajaba
Informática de la Universidad Nacional de desarrollando software para la fuerza
Trujillo. Lo que a continuación presentamos naval de los Estados Unidos, comenzó a
es un informe acerca del sistema de gestión desarrollar SQLite, según él cuenta con
de bases de datos SQLite, su instalación y los sus propias palabras: El proyecto SQLite
comandos básicos para crear bases de datos surgió de una necesidad personal, para
en el sistema operativo Linux. mi propio uso.
En enero de 2000 D. Richard Hipp
1. INTRODUCCIÓ N estaba trabajando con su equipo del
General Dynamics en la Fuerza naval de
Cada vez que los desarrolladores se los Estados Unidos, en un proyecto de
enfrentan a nuevos desafí os, es software, el cual se conectaba a una
primordial saber optar por la mejor base de datos Informix, el motor
herramienta para el tratamiento de los funcionaba muy bien, pero habí tenido
an
datos. problemas para hacer una
Desde que en la informática se reconfiguración cuando el sistema se
comenzó a trabajar con datos, la mayor reiniciaba.
preocupación e interrogante fue cómo Luego cambiaron a PostgreSQL, pero
manipular esos datos. Hasta hace administrar la base de datos era un poco
algunas décadas atrás era un verdadero más compleja. Fue en ese momento
calvario para el desarrollador, puesto que cuando surgió la idea de escribir un
el mantenimiento se realizaba a través simple motor de base de datos SQL que
del manejador de archivos del lenguaje permitiera leer los archivos del disco duro,
con el cual se realizaba la y luego ser llamados en diferentes
implementación. Aquello desencadenó solicitudes.
que surgieran las primeras alternativas Cinco meses más tarde comenzó a
para separar el programa del escribir las primeras versiones de lo que
mantenimiento y manipulación de los hoy conocemos como SQLite, con el
datos. Fue así que surgieron los primeros pensamiento de que serí útil en algún
a
motores que cumplí esa función; hoy
an problema similar.
podemos encontrar grandes titanes, Es claro que SQLite tiene la capacidad
como Oracle, Informix, PostgreSQL, My de reemplazar a grandes motores de
SQL y Firebird. Bases de Datos y acoplarse al desarrollo
Aun así muchos desarrolladores han de nuestros proyectos informáticos, ya
optado por una opción que surgió de la sea en ambientes de prototipos de
necesidad de buscar agilidad, sencillez y sistemas como así también en complejos
sobre todo, cero configuraciones. Su y robustos software.
nombre es SQLite.
SQLite es una base de datos muy 3. DEFINICIÓ N
similar a la conocida Access del mundo
Windows pero a diferencia de esta posee SQLite es un proyecto de dominio
una serie de ventajas que la hacen público creado por D. Richard Hipp que
interesante en aplicar. Para comenzar es implementa una pequeña librerí dea
multiplataforma y cumple con los aproximadamente 500Kb programada en
estándares (en su mayorí SQL92 por lo
a) lenguaje C, que funciona como un
que su sintaxis y forma de uso casi no sistema de gestión de base de datos
posee curva de aprendizaje a los relacionales.
conocedores de SQL. Es muy rápido y se destaca también
por su versatilidad.
-1-
2. UNT-INFORMÁ TICA – BASE DE DATOS I
A diferencia de los motores de base sin ninguna configuración o
de datos convencionales con la administración.
arquitectura cliente-servidor, SQLite es Estabilidad: SQLite es compatible
independiente, ya que no se comunica con ACID, reunión de los cuatro
con un motor de base de datos, sino que criterios de Atomicidad, Consistencia,
las librerí de SQLite pasan a integrar la
as Aislamiento y Durabilidad.
aplicación. SQL: implementa un gran subconjunto
Combina el motor y el interfaz de la de la ANSI – 92 SQL estándar,
base de datos en una única biblioteca, y incluyendo sub-consultas, generación
almacena los datos en un único archivo de usuarios, vistas y triggers.
de texto plano. Esto hace que cada Interfaces: cuenta con diferentes
usuario pueda crear tantas bases de interfaces del API, las cuales permiten
datos como desee sin la necesidad de la trabajar con C++, PHP, Perl, Python,
intervención de un administrador de Ruby, Tcl, Groovy, Qt ofrece el plugin
bases de datos que gestione los qsqlite, etc.
espacios de trabajo, usuarios y permisos Costo: SQLite es de dominio público,
de acceso. El hecho de almacenar toda y por tanto, es libre de utilizar para
la base de datos en un único archivo, cualquier propósito sin costo y se
facilita la portabilidad de los datos, y puede redistribuir libremente.
solamente tiene la restricción del espacio SQLite como cualquier otro software
de disco asignado al usuario en el no está exento de limitaciones, algunas
servidor. de las desventajas son las siguientes:
Limitaciones en Where: esta
4. CARACTERÍSITICAS limitación está dada por el soporte
para clausuras anidadas.
SQLite goza de un par de Falta de Clave Foránea: cuando se
características que lo hacen único, realice la creación de la tabla desde el
alguna de ellas se detallan a modo consola, está permitiendo el uso
continuación. de la clausura, aunque no realizara el
SQLite es un sistema completo de chequeo de la misma.
bases de datos que soporta múltiples
tablas, índices, triggers y vistas. 6. INSTALACIÓ N DE SQLITE
No necesita un proceso separado
funcionando como servidor ya que lee La instalación es sencilla, sólo hay que
y escribe directamente sobre archivos ingresar en el terminal:
que se encuentran en el disco duro.
El formato de la base de datos es $ sudo apt-get install sqlite
multiplataforma e indistintamente se
puede utilizar el mismo archivo en Esta instalación colocará el motor de la
sistemas de 32 y 64 bits. base de datos dentro de los comandos
SQLite emplea registros de tamaño del bash que nos permitirá llamarla
variable de forma tal que se utiliza el invocando:
espacio en disco que es realmente
necesario en cada momento. $ sqlite
Existe un programa independiente de SQLite version 3.7.6
nombre sqlite que puede ser utilizado Enter “.help” for instructions
para consultar y gestionar los ficheros sqlite>
de base de datos SQLite.
Demostrando que la base corre y está
5. VENTAJAS Y pronta a recibir nuestras instrucciones.
DESVENTAJAS Y si contamos con los códigos fuentes
descargados desde el sitio oficial de
SQL presenta las siguientes ventajas: SQLite, simplemente deberemos realizar
Tamañ o: SQLite tiene una pequeña los siguientes pasos:
memoria y una única biblioteca es
necesaria para acceder a bases de Descomprimir los fuentes de SQLite
datos, lo que lo hace ideal para en alguna carpeta con:
aplicaciones de bases de datos tar zxf sqlite.tar.gz
incorporadas. Ejecutar:
Rendimiento de base de datos: script ./configure
SQLite realiza operaciones de manera Realizar la instalación en el sistema
eficiente y es más rápido que MySQL ejecutando:
y PostgreSQL. make install
Portabilidad: SQLite se ejecuta en
muchas plataformas y sus bases de
datos pueden ser fácilmente portadas
-2-
3. UNT-INFORMÁ TICA – BASE DE DATOS I
7. TIPOS DE DATOS contenga las bases cuando abramos el
shell:
Cada valor almacenado en una BBDD sqlite> .database
SQlite tiene uno de las siguientes clases
de almacenamiento: 9.1. CREACIÓ N DE LA BASE DE
DATOS
Para hacerlo simplemente
escribimos en la ventana de
comandos el nombre de la base que
vamos a crear, si existe esta se
abrirá para que trabajemos en ella.
Por ejemplo escribimos “sqlite3
base.db”
9.2. CREACIÓ N DE TABLAS
8. CLASIFICACIÓ N DE LOS Como en este caso que hemos
COMANDOS creado la tabla “Datos”:
sqlite> CREATE TABLE Datos (
8.1. Comandos DDL ...> id int(3) not null,
...>Apellido char(30) not null,
Comando Descripció n ...>Nombre char(30) not null,
Utilizado para crear ...>Documentos char(30) not null,
nuevas tablas, ...>Observaciones char(60) not
CREATE
procedimientos null,
almacenados e í ndices
...> primary key (id));
Empleado para eliminar
DROP tablas, procedimientos Podrí amos haber creado la tabla
almacenados e í ndices “Datos” de varias maneras, sin
Utilizado para modificar indicar el tipo de datos (int= integer o
las tablas agregando números enteros) caracterí sticas
ALTER
campos o cambiando la (“not null” que significa que deben
definición de los campos ser completadas) o la clave primaria
que es quien crea el autoincremento
8.2. Comandos DML cuando se cargan nuevas filas de
datos.
Comando Descripció n
Utilizado para consultar 9.3. ELIMINACIÓ N DE TABLAS
registros de la base de
SELECT
datos que satisfagan un
Para eliminar una tabla se usa la
criterio determinado.
Utilizado para cargar sentencia “drop table”, en este
lotes de datos en la ejemplo teníamos dos tablas Datos y
INSERT Otra:
base de datos en una
única operación. sqlite>drop table Otra;
Utilizado para modificar
los valores de los 9.4. INSERTAR REGISTROS
DELETE
campos y registros
especificados. Para hacerlo usamos la conocida
Utilizado para eliminar
sentencia “insert into [Tabla]
UPDATE registros de una tabla
de una base de datos. (campos) values ('valores')” como
vemos en este modelo:
sqlite>insert into Datos
9. COMANDOS BÁ SICOS (id,Apellido, Nombre, Documentos,
Observaciones)
Para los comandos principales se debe values ('1','Aguiar','Edwin','Si,
colocar un punto delante. Para las tiene','Ninguna que destacar');
sentencias de uso de la base la sintaxis sqlite> select * from Datos;
es similar a la de sql y Mysql sin mayores 1|Aguiar|Edwin|Si, tiene|Ninguna
complicaciones, incluyendo el “;” al final que destacar
de cada sentencia.
Para acceder al menú de ayudas 9.5. MODIFICACIÓ N DE DATOS
debes colocar “.help” y para salir al
prompt del sistema “.exit”. Uno de los problemas a la hora de
Veamos ahora como listar las bases manejar bases de datos es que
de datos existentes, tablas y columnas. suele ser necesario cambiarlos.
Un detalle importante es que debemos Por ejemplo de esta manera:
estar en el directorio de trabajo que
-3-
4. UNT-INFORMÁ TICA – BASE DE DATOS I
sqlite>update Datos set 10. APLICACIÓ N
Nombre="Marcelo" where
Nombre="Edwin"; Mozilla Firefox la utiliza para
sqlite>update Datos set almacenar, por ejemplo, las cookies,
Observaciones="Hija, bebe de 7 los favoritos, el historial, etc. Se está
meses" where considerando también utilizar SQLite
Observaciones="hja de siete en Mozilla Calendar y Mozilla
meses"; Thunderbird.
sqlite> select * from Datos; Yum, la herramienta de gestión de
1 Aguiar Edwin Si, tiene Ninguna paquetes de Fedora Core, ha
que destacar cambiado a SQLite y pysqlite para el
2 Esparza Silvina Tambien posee almacenamiento de datos y parseo de
Esposa XML desde el núcleo de Fedora 4.
3 Aguiar Esparza Sabina recien Open Outlook Connector, un conector
obtenido Hija, bebe de 7 meses open source de Microsoft
Outlook/MAPI ha sido hecho usando
9.6. ELIMINACIÓ N DE REGISTROS SQLite.
Varias aplicaciones de Apple utilizan
La eliminación de registros se SQLite, incluyendo Apple Mail y el
efectúa con la sentencia Delete, la gestor de RSS que se distribuye con
cual al igual que todas hay que usar OS X. El software Aperture de Apple
con algunas precauciones porque no guarda la información de las imágenes
hay vuelta atrás. en una base de datos SQLite,
sqlite> delete from Datos where utilizando la API Core Data.
id="4"; Adobe Photoshop Elements utiliza
sqlite> select * from Datos; SQLite como motor de base de datos
1|Aguiar|Edwin|Si, tiene|Ninguna desde la version 6.0 en sustitución del
que destacar Microsoft Access, utilizado en las
2|Esparza|Silvina|Tambien versiones anteriores.
posee|Esposa Android usa SQLite para
3|Aguiar almacenamiento de datos
Esparza|Sabina|recienobtenido|Hij estructurados (package
a, bebe de 7 meses android.database.sqlite).
9.7. BUSCANDO LOS DATOS
11. CONCLUSIÓ N
La expresión universal de
búsqueda es “select * from [tabla];” Finalmente, por las ventajas descritas
en donde el asterisco es un comodí n y la gran cantidad de lenguajes de
que indica todas lascolumnas de esa programación que soportan SQLite, lo
tabla, pero puede usarse indicando transforman no sólo en una alternativa,
una especí fica: “select Apellido sino en una opción robusta y decisiva
from Datos;” y solo listara el total para la implementación de sistemas que
de datos de la columna Apellidos requieren almacenamiento de
como vemos en este ejemplo: información en un formato altamente
sqlite> select Apellido from Datos; dinámico con soporte para SQL, con
Aguiar planes de escalabilidad, portabilidad y
Esparza rapidez, sobre todo cuando se utilizan
Aguiar Esparza lenguajes de programación dinámicos,
sqlite> algo muy común en la actualidad, más
Una forma de búsqueda es aún cuando se hace necesario utilizar un
ordenar los resultados por algún motor pequeño y liviano que no requiera
criterio (“orderby”), en este ejemplo mayor configuración o administración
por el alfabético de la columna como es el caso de dispositivos
Nombre: empotrados.
sqlite> select * from Datos order
by Nombre; 12. REFERENCIAS
1|Aguiar|Edwin|Si, tiene|Ninguna
que destacar (1) D. Richard Hipp. http://www.sqlite.org/
3|Aguiar (2) PHPhost.hu. hu.php.net/sqlite
Esparza|Sabina|recienobtenido|Hij (3) Gilber E. Peña Cuellar.
a, bebe de 7 meses http://www.somoslibres.org/modules.php
2|Esparza|Silvina|Tambien ?name=News&file=article&sid=183
posee|Esposa (4) http://blog.sobbayi.com/2010/05/sqlite-vs-
mysql-how-to-decide-which-to-use/
(5) http://www.ecured.cu/index.php/SQLite#
Caracter.C3.ADsticas
-4-