Tecnología en Analítica y
Ciencia de los Datos
Asignatura:
Bases de Datos I
Febrero 2022
PROFESOR:
José M. Aquino
jaquino@[Link]
La Caleta, Boca Chica,
República Dominicana
[Link]
SQLite
Introducción a SQLite
Con el objetivo de poner en práctica SQL se va a utilizar SQLiteStudio un
sistema de gestión de bases de datos relacionales basado en SQLite que
implementa un subconjunto del estándar SQL. Se puede consultar más
información sobre SQLite en la siguiente dirección:
[Link]
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
Para acceder a SQLiteStudio se utiliza el entorno virtual y se descarga.
Se pulsa sobre el icono de SQLiteStudio y aparece la interfaz principal.
Para ilustrar algunas de las funcionalidades de SQLiteStudio se va a
considerar una base de datos para gestionar una empresa de arquitectura
que tiene sedes en Santo Domingo, Santiago y Puerto Plata. La
información que se desea almacenar es:
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
Sobre los empleados: código de empleado, nombre y apellido, sueldo,
nombre y la ciudad de su departamento y el número de proyecto al que
están asignados.
Sobre cada departamento: nombre, ciudad donde se encuentran y
teléfono. Un departamento con el mismo nombre puede estar en
ciudades diferentes, y en una misma ciudad puede haber departamentos
con nombres diferentes.
• Sobre los proyectos: código, nombre, precio, fecha de inicio, fecha
prevista de finalización, fecha real de finalización y el código de
cliente.
• Sobre los clientes: código de cliente, el nombre, la cedula, la
dirección, la ciudad y el teléfono.
En primer lugar, hay que crear la base de datos que contendrá las tablas
que almacenarán la información:
• Se pulsa sobre “Database”.
• En el desplegable que aparece se selecciona “Add database”
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
• Aparece un formulario en el que se debe indicar el tipo de base
de datos (sección “Database type”), dónde se ubicará la base de
datos (sección “File”), y el nombre de la base de datos (“sección
name”). Se elige el tipo “SQLite 3”.
Se pulsa sobre el símbolo “+” para crear el archivo de la base de
datos, aparece un navegador para ir a la carpeta dónde se quiere
guardar el archivo, y se crea un archivo denominado
“Empresa.sqlite3”
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
• Cuando se pulsa sobre “OK” la nueva base de datos aparece en
el marco izquierdo de la interfaz principal.
• Para poder usar la base de datos se selecciona con el ratón, y con
botón derecho aparece un desplegable en el que se elige
“Connect to the database”.
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
• Una vez que se ha conectado con la base de datos, en el marco
izquierdo aparece listadas las tablas y vistas asociadas a la base
de datos. En el ejemplo aparecen vacías.
• Para interactuar con la base de datos, se debe abrir el editor de
sql, pulsando sobre el icono en forma de lápiz.
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
• El editor de SQL se muestra en la parte derecha de la interfaz
principal.
• Vamos a crear las diferentes tablas.
Para crear una tabla se puede usar un formulario gráfico.
(icono ) o bien el editor de SQL. Para ilustrar el uso de SQL,
se va a utilizar el editor dónde habrá que introducir las
sentencias en la sintaxis de SQL.
• Se crea una tabla clientes para almacenar la información sobre
los mismos. Para ello se introduce la siguiente sentencia en el
editor:
CREATE TABLE clientes (codigo_cli INTEGER,
nombre_cli CHAR (30) NOT NULL , cedula CHAR (12), direccion
CHAR (30), ciudad CHAR (20), telefono CHAR (12), PRIMARY
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
KEY (codigo_cli),UNIQUE(cedula) );
• A continuación, pulsamos sobre el icono de ejecutar sentencia
SQL (icono ) para crear la tabla. La nueva tabla aparece
listada en la base de datos.
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
• Si pulsamos sobre la tabla, aparece en la parte derecha de la
interfaz, la definición de la tabla creada.
• Puedes navegar por las diferentes pestañas (Structure,Data,…)
y sobre los iconos inferiores;
( ) para
investigar su utilidad.
A continuación, se pueden crear el resto de tablas de la base de
datos de ejemplo de la misma forma:
• Tabla departamentos
CREATE TABLE departamentos
(nombre_dep CHAR(20),
ciudad_dep CHAR(20),
telefono INTEGER DEFAULT NULL,
PRIMARY KEY (nombre_dep, ciudad_dep));
• Tabla proyectos
CREATE TABLE proyectos
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
(codigo_proyec INTEGER,nombre_proyec CHAR(20),
precio REAL, fecha_inicio DATE, fecha_prev_fin DATE,
fecha_fin DATE DEFAULT NULL,codigo_cliente INTEGER,
PRIMARY KEY (codigo_proyec),
CHECK (fecha_inicio < fecha_prev_fin),
CHECK (fecha_inicio < fecha_fin),
FOREIGN KEY ( codigo_cliente ) REFERENCES clientes (
codigo_cli));
• Tabla empleados
CREATE TABLE empleados
(codigo_empl INTEGER,nombre_empl CHAR (20),
apellido_empl CHAR(20),sueldo REAL CHECK (sueldo >
7000),
nombre_dep CHAR(20),ciudad_dep CHAR(20),
num_proyec INTEGER,PRIMARY KEY (codigo_empl),
FOREIGN KEY (nombre_dep, ciudad_dep) REFERENCES
departamentos (nombre_dep, ciudad_dep),
FOREIGN KEY (num_proyec) REFERENCES proyectos
(codigo_proyec) );
• El resultado final debería ser similar al siguiente:
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
• Observar que, al crear una tabla, las restricciones se pueden
definir a nivel de columna o bien a nivel de tabla. Así en el caso
de que la restricción haga referencia a una sola columna, se
puede optar por una opción u otra. Sin embargo, si hace
referencia a más de una columna debemos definir la restricción
a nivel de tabla.
• A continuación, vamos a crear una vista utilizando las tablas
proyectos y clientes. Para ello se usa el editor de SQL de la misma
forma que en el caso de la creación de tablas.
CREATE VIEW proyectos_por_cliente AS
SELECT c.codigo_cli, COUNT(*)
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
FROM proyectos p, clientes c
WHERE p.codigo_cliente = c.codigo_cli
GROUP BY c.codigo_cli;
• El resultado de la ejecución debería ser similar al siguiente:
• Por último, se puede probar lo siguiente:
- Eliminar la vista proyectos_por_cliente usando la sentencia:
DROP VIEW proyectos_por_cliente
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino
- Eliminar la tabla clientes usando la sentencia:
DROP TABLE clientes
- Añadir una nueva columna denominada “país” de tipo CHAR(20) a
la tabla clientes:
ALTER TABLE clientes ADD COLUMN paises CHAR(20)
Introducción a la Ciencia de Datos || Tecnología en Analítica y Ciencia de los Datos – ITLA
Prof. José M. Aquino