-
Notifications
You must be signed in to change notification settings - Fork 21
Sistemas de Bases de Datos y Tutorial de SQLite3
Corresponden a programas que nos permiten almacenar y modificar información almacenada en Bases de Datos, además de ser una poderosa herramienta para obtener información mediante un lenguaje de consultas.
Algunos ejemplos de sistemas de bases de datos son PostgreSQL, MongoDB, MySQL, SQLite3, entre otros.
En esta guía nos vamos a centrar en la instalación y uso de SQLite3, un sistema de bases de datos bastante liviano en comparación al resto, que nos va a permitir familiarizarnos con el lenguaje de consultas SQL.
Si utilizan sistema operativo MacOS o basado en Linux, SQLite3 viene instalado por defecto así que pueden saltar a la sección "Recorrido por Funcionalidades de SQLite3"
Primero tenemos que descargar SQLite en nuestro computador. Lo podemos hacer ingresando a este link y apretando la opción que dice algo como sqlite-tools-win32-x86
bajo el apartado "Precompiled Binaries for Windows".
Al extraer el archivo que descargamos, deberíamos ver un archivo llamado sqlite3.exe
. Este archivo es muy importante asi que asegúrate de que esté ahí.
Ahora tenemos que acceder al disco C, para acceder a él podemos buscar "Mi PC" en la barra de búsqueda de Windows, y haciendo doble click en el disco C.
Ahora, tenemos que crear una carpeta llamada sqlite3. Dentro de ella, debes colocar el archivo sqlite3.exe
que dijimos que era muy importante antes!
Deberías ver algo como esto:
El último paso es agregar SQLite3 al PATH, de esta forma podemos ejecutar el comando sqlite3
desde cualquier parte a través de la linea de comandos.
Vamos a Panel de Control > Sistema y Seguridad > Sistema > Configuraciones Avanzadas del Sistema. Pueden llegar a lo mismo si buscan "Advanced System Settings" en la barra de búsqueda.
Apretamos el botón "Variables de Entorno" (el que está destacado en la imagen anterior)
Bajo "Variables de Sistema", hacemos doble click sobre la vairable PATH
(la destacada en la imagen), apretamos el botón "Nuevo", y escribimos lo siguiente:
C:\sqlite3
Apretamos OK y listo!
Ahora podemos comprobar que funciona abriendo una consola de PowerShell (lo puedes hacer buscando PowerShell en la barra de búsqueda), y ejecutando el comando sqlite3
.
Podemos crear una nueva base de datos escribiendo ejecutando lo siguiente desde la linea de comandos (no desde SQLite3!).
sqlite3 NOMBRE_DB.db
Donde cambian NOMBRE_DB por el nombre que quieran que tenga su archivo.
Antes que todo vamos a cambiar unas configuraciones que nos ayudarán a que nuestras consultas se vean mucho mejor. Los siguientes comandos permiten que los resultados de nuestras consultas se muestren en columnas, y que se muestren los nombres de los atributos:
.mode column
.headers on
(Es normal que no pase nada al ingresar los comandos)
Ahora estamos dentro de nuestra base de datos, pero no tenemos ninguna relación definida. A modo de ejemplo, crearemos una relación simple que modele a los estudiantes:
Estudiante(id int PRIMARY KEY, nombre string, generacion int)
Para declarar esta relacion en SQLite3, ejecutamos el siguiente comando (el punto y coma final es muy importante):
CREATE TABLE estudiante(id int PRIMARY KEY, nombre TEXT, generacion int);
Podemos listar las tablas que tenemos actualmente en nuestra base de datos con el siguiente comando:
.tables
El problema ahora es que nuestra relación esta vacía! Pero no por mucho, con los siguientes comandos podemos agregar tuplas a la relacion:
INSERT INTO estudiante VALUES (1, "Ignacio", 2018);
INSERT INTO estudiante VALUES (2, "Marcelo", 2016);
INSERT INTO estudiante VALUES (3, "Javiera", 2013);
INSERT INTO estudiante VALUES (4, "Marcelo", 2018);
INSERT INTO estudiante VALUES (5, "Daniela", 2016);
Ahora, si quisieramos hacer una consulta sobre los estudiantes de la base de datos que pertenecen a la generación 2018, podemos hacer la siguiente consulta:
SELECT * FROM estudiante WHERE generacion=2018;
El resultado de esta consulta debería ser similar a esto:
Podemos salir de SQLite3 mediante el comando:
.quit
Podemos ingresar nuevamente a la base de datos que creamos usando el mismo comando que al inicio, cambiando NOMBRE_DB por el nombre del archivo correspondiente:
sqlite3 NOMBRE_DB.db