# Resumen de clases Senati
## SEMANA 1
### 12-03-2024 (Teoría)
- Conceptos de entidades y atributos.
- Se formaron grupos de trabajo.
- Se hizo una asignación: Cada grupo escogía caso de su elección para identificar entidades y atributos.
- Cada grupo expuso su modelo.
### 14-03-2024 (Taller)
- Instalación de herramientas para trabajar con bd. (gestor de oracle 21c, Sql developer).
- Creación de un usuario en sqlplus para conectarlo después con el sql developer.
```sql
- Entrar al sqlplus e ingresar con nombre de usuario entrar como: /as sysdba
- ALTER SESSION SET "_ORACLE_SCRIPT" = TRUE;
- CREATE USER SENATI_LOCAL IDENTIFIED BY "LACLAVEEE"
DEFAULT TABLESPACE "USERS"
TEMPORARY TABLESPACE "TEMP";
- ALTER USER SENATI_LOCAL QUOTA UNLIMITED ON USERS;
- GRANT CREATE SESSION TO SENATI_LOCAL;
- GRANT "RESOURCE" TO SENATI_LOCAL;
- ALTER USER SENATI_LOCAL DEFAULT ROLE "RESOURCE";
- Tipos de datos en oracle. Manejo de atributos tipo date.
- Sentencias sql para creación de tabla (CREATE TABLE).
### 16-03-2024 (Taller)
- Uso de DESCRIBE.
- Inserción de datos (INSERT INTO).
- Select, delete y update.
- Modificación de campos (ALTER TABLE xxtablaxx MODIFY xxnuevo_campo_con_tipoxx).
Para varios campos:
ALTER TABLE xxtablaxx MODIFY (
nuevo_campo tipo,
nuevo_campo2 tipo, ...
)
- Alias (AS) y concatenación de campos con (||).
- Limpiar la tabla (eliminación de todos los registros) con TRUNCATE O DELETE.
- Ejercicio integrador de clase para aplicar todos los comandos usados.

## SEMANA 2
### 19-03-2024 (Teoría)
- Concepto de bases de datos relacionales.
- Concepto de relaciones, consultas, normalización, etc.
- Modelamiento de una bd de ejemplo en draw.io.
- Se vio un video de blackboard sobre base de datos.
- Ejercicio grupal de identificación de relaciones continuando el proyecto de la clase pasada.
### 21-03-2024 (Taller)
- Script del modelo de ejemplo de la clase anterior.
- 2 formas de referenciar una foreign key en sql.
Ejemplo:
Tabla AUTORES(idAutor, nombre, etc)
Tabla LIBROS(idLibros, titulo, etc, idAutor)
- 1ra Forma: Despues de crear la tabla.
```sql
ALTER TABLE LIBROS
ADD CONSTRAINT FK_AUTOR
FOREIGN KEY (idAutor)
REFERENCES AUTORES(idAutor);
```
- 2da Forma: En la misma creación de la tabla.
```sql
CREATE TABLE LIBROS (
idAutor NUMBER PRIMARY KEY,
titulo VARCHAR2(40),
fechaPublicacion DATE,
idAutor NUMBER REFERENCES AUTORES(idAutor)
);
```
- Eliminar una relación (foreign key):
```sql
ALTER TABLE LIBROS DROP CONSTRAINT FK_AUTOR;
```
- Se vio el orden en que se deben eliminar las tablas cuando tienen una relación.
- Trabajo grupal: Hacer el sql para crear la bd y las relaciones con el modelo modelo que se viene trabajando por cada grupo.
### 23-03-2024 (Taller)
- Se expuso por cada grupo el codigo dejado la clase anterior.
- Trabajo: Hacer inserciones en la bd que hemos generado anteriormente. 5 registros por tabla aprox. para poder hacer consultas.
## Semana 3
### 26-03-2024 (Teoría)
- Se hablo sobre las etapas del ciclo de creación del software.
- Se dejo de trabajo aplicar todas las etapas con el proyecto que se viene elaborando de manera grupal. Se expondrá la siguiente clase en PPT.
- Diapositivas de clase
{%slideshare edwcastlem/ciclodevidadedesarrollodesistemaspptx/267023943 %}
### Ejemplo de Diagrama de gant
```mermaid
gantt
title Proyecto Sistema de Biblioteca v1.0
dateFormat DD-MM-YYYY
axisFormat %d-%b
excludes sunday
section Análisis y diseño
Toma de requisitos :a1, 26-03-2024, 5d
Modelamiento :a2, after a1, 5d
Desarrollo de mockups : a3, 30-03-2024, 5d
section Implementación
Modelamiento de la BD :28-03-2024, 6d
Script de la BD :10d
Diseño de interfaces : 3d
```