# data[].attributes.body
Qué es MySQL? Es un programa que nos ayuda a organizar y almacenar información en una computadora, como si fuera una gran biblioteca donde guardamos libros, pero en este caso, los libros son datos, usamos MySQL para guardar, buscar y organizar esa información de manera rápida y ordenada. Es muy popular porque es gratuito y puede trabajar en diferentes tipos de proyectos, desde sitios web hasta grandes aplicaciones.
¿Comente 2 características del servidor de base de datos MySQL?
-Fácil de usa: Aunque es un sistema muy poderoso, MySQL es relativamente fácil de aprender y usar. Muchas personas lo eligen porque no requieren de una gran experiencia técnica para empezar a trabajar con él
-Alta disponibilidad y confiabilidad: MySQL es conocido por su capacidad para garantizar la disponibilidad continua de los datos a través de sus funciones como la replicación y la recuperación ante fallos.

# data[].attributes.body
Crea el diseño lógico y físico de la base de datos, las tablas tienen las 5 inserciones de registros, elabora las 3 vistas de datos

# data[].attributes.attachment_link.description
Publishing platform for digital magazines, interactive publications and online catalogs. Convert documents to beautiful publications and share them worldwide. Title: Introducción A La Base De Datos, Author: Madelyn Stefania Jimenez Franco, Length: 4 pages, Published: 2025-02-10

# data[].attributes.headline
Argumenta los conceptos y origen de los Datos.

# data[].attributes.subject
Argumenta los conceptos y origen de los Datos.

# data[].attributes.body
Modelos de Datos

# data[].attributes.body
Foro Respuestas

# data[].attributes.body
Instrucciones

a. Programar el Modelo Físico de datos en la consola de Mysql.

b. Documentar el paso a paso del literal 'a' en un archivo plano (Bloc de notas de Windows) .

c. Publicar el archivo plano en Calameo (https://www.calameo.com/) con su nombre y apellido y compartir el enlace en este apartado.

# data[].attributes.attachment_link.readable_text
Programar el Modelo Físico de datos en la consola de Mysql. b. Documentar el paso a paso del literal 'a' en un archivo plano (Bloc de notas de Windows) . c. Publicar el archivo plano en Calameo (https://www.calameo.com/) con su nombre y apellido y... More

# data[].attributes.attachment_link.description
Programar el Modelo Físico de datos en la consola de Mysql. b. Documentar el paso a paso del literal 'a' en un archivo plano (Bloc de notas de Windows) . c. Publicar el archivo plano en Calameo (https://www.calameo.com/) con su nombre y...

# data[].attributes.body
Elabore el diseño de una base de datos "Hotel", la base de datos debe tener al menos 4 tablas relacionadas, con 5 inserciones de registros en cada tabla, incorporar en la base de datos 3 vistas de datos, de las 3 vistas 2 vistas son simples y 1 vista con inner join.

Copiar la producción del código fuente en un documento .TXT

# data[].attributes.attachment_link.readable_text
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.2.0 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> CREATE DATABASE Hotel;
Query OK, 1 row affected (0.00 sec)

mysql> use Hotel;
Database changed
mysql> CREATE TABLE Clientes (id_cliente INT AUTO_INCREMENT PRIMARY KEY,cedula VARCHAR(15), nombre VARCHAR(50), apellido VARCHAR(50), email VARCHAR(100), telefono VARCHAR(15));
Query OK, 0 rows affected (0.01 sec)

mysql> describe Hotel;
mysql> describe Clientes;
+------------+--------------+------+-----+---------+----------------+
| Field      | Type         | Null | Key | Default | Extra          |
+------------+--------------+------+-----+---------+----------------+
| id_cliente | int          | NO   | PRI | NULL    | auto_increment |
| cedula     | varchar(15)  | YES  |     | NULL    |                |
| nombre     | varchar(50)  | YES  |     | NULL    |                |
| apellido   | varchar(50)  | YES  |     | NULL    |                |
| email      | varchar(100) | YES  |     | NULL    |                |
| telefono   | varchar(15)  | YES  |     | NULL    |                |
+------------+--------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)

mysql> CREATE TABLE Habitaciones (id_habitacion INT AUTO_INCREMENT PRIMARY KEY, numero INT, tipo VARCHAR(20), precio_noche DECIMAL(10,2), estado VARCHAR(10));
Query OK, 0 rows affected (0.01 sec)

mysql> describe Habitaciones
    -> show databases;

mysql> describe Habitaciones;
+---------------+---------------+------+-----+---------+----------------+
| Field         | Type          | Null | Key | Default | Extra          |
+---------------+---------------+------+-----+---------+----------------+
| id_habitacion | int           | NO   | PRI | NULL    | auto_increment |
| numero        | int           | YES  |     | NULL    |                |
| tipo          | varchar(20)   | YES  |     | NULL    |                |
| precio_noche  | decimal(10,2) | YES  |     | NULL    |                |
| estado        | varchar(10)   | YES  |     | NULL    |                |
+---------------+---------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

mysql> CREATE TABLE Reservas (id_reserva INT AUTO_INCREMENT PRIMARY KEY, id_cliente INT, id_habitacion INT, fecha_inicio DATE, fecha_fin DATE, FOREIGN KEY (id_cliente) REFERENCES Clientes(id_cliente), FOREIGN KEY (id_habitacion) REFERENCES Habitaciones(id_habitacion));
Query OK, 0 rows affected (0.01 sec)

mysql>  describe Reservas;
+---------------+------+------+-----+---------+----------------+
| Field         | Type | Null | Key | Default | Extra          |
+---------------+------+------+-----+---------+----------------+
| id_reserva    | int  | NO   | PRI | NULL    | auto_increment |
| id_cliente    | int  | YES  | MUL | NULL    |                |
| id_habitacion | int  | YES  | MUL | NULL    |                |
| fecha_inicio  | date | YES  |     | NULL    |                |
| fecha_fin     | date | YES  |     | NULL    |                |
+---------------+------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

mysql>  CREATE TABLE Facturas (id_factura INT AUTO_INCREMENT PRIMARY KEY, id_reserva INT, cedula INT, total DECIMAL(10,2), fecha_emision DATE, FOREIGN KEY (id_reserva) REFERENCES Reservas(id_reserva));
Query OK, 0 rows affected (0.01 sec)

mysql>  describe Facturas;
+---------------+---------------+------+-----+---------+----------------+
| Field         | Type          | Null | Key | Default | Extra          |
+---------------+---------------+------+-----+---------+----------------+
| id_factura    | int           | NO   | PRI | NULL    | auto_increment |
| id_reserva    | int           | YES  | MUL | NULL    |                |
| cedula        | int           | YES  |     | NULL    |                |
| total         | decimal(10,2) | YES  |     | NULL    |                |
| fecha_emision | date          | YES  |     | NULL    |                |
+---------------+---------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)


mysql> INSERT INTO Clientes (nombre, apellido,cedula, email, telefono) VALUES ('Emily', 'Zambrano', '1234867490', 'zambranoe@gmail.com', '123456789'), ('Damaris', 'SÃ¡nchez', '1456790456', 'damaris@yahoo.com', '987654321'), ('Carlos', 'GarcÃ­a', '1723849556' , 'carlosg@hotmail.com', '112233445'), ('Kenia', 'LÃ³pez', '1784560034', 'kpez@outlook.com', '556677889'), ('Santiago', 'Torres', '1738495012', 'santy.torres@gmail.com', '998877665');
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from clientes;
+------------+------------+----------+----------+------------------------+-----------+
| id_cliente | cedula     | nombre   | apellido | email                  | telefono  |
+------------+------------+----------+----------+------------------------+-----------+
|          1 | 1234867490 | Emily    | Zambrano | zambranoe@gmail.com    | 123456789 |
|          2 | 1456790456 | Damaris  | SÃ¡nchez  | damaris@yahoo.com      | 987654321 |
|          3 | 1723849556 | Carlos   | GarcÃ­a   | carlosg@hotmail.com    | 112233445 |
|          4 | 1784560034 | Kenia    | LÃ³pez    | kpez@outlook.com       | 556677889 |
|          5 | 1738495012 | Santiago | Torres   | santy.torres@gmail.com | 998877665 |
+------------+------------+----------+----------+------------------------+-----------+
5 rows in set (0.00 sec)

mysql> INSERT INTO Habitaciones (numero, tipo, precio_noche, estado) VALUES (101, 'individual', 50.00, 'libre'), (102, 'doble', 80.00, 'ocupada'), (103, 'suite', 150.00, 'libre'), (104, 'doble', 75.00, 'ocupada'), (105, 'individual', 55.00, 'libre');
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from Habitaciones;
+---------------+--------+------------+--------------+---------+
| id_habitacion | numero | tipo       | precio_noche | estado  |
+---------------+--------+------------+--------------+---------+
|             1 |    101 | individual |        50.00 | libre   |
|             2 |    102 | doble      |        80.00 | ocupada |
|             3 |    103 | suite      |       150.00 | libre   |
|             4 |    104 | doble      |        75.00 | ocupada |
|             5 |    105 | individual |        55.00 | libre   |
+---------------+--------+------------+--------------+---------+
5 rows in set (0.00 sec)


mysql>  INSERT INTO Reservas (id_cliente, id_habitacion, fecha_inicio, fecha_fin) VALUES (1, 101, '2025-03-01', '2025-03-05'), (2, 102, '2025-03-02', '2025-03-06'), (3, 103, '2025-03-03', '2025-03-07'), (4, 104, '2025-03-04', '2025-03-08'), (5, 105, '2025-03-05', '2025-03-09');
Query OK, 5 rows affected (0.01 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from Reservas;
+------------+------------+---------------+--------------+------------+
| id_reserva | id_cliente | id_habitacion | fecha_inicio | fecha_fin  |
+------------+------------+---------------+--------------+------------+
|          1 |          1 |           101 | 2025-03-01   | 2025-03-05 |
|          2 |          2 |           102 | 2025-03-02   | 2025-03-06 |
|          3 |          3 |           103 | 2025-03-03   | 2025-03-07 |
|          4 |          4 |           104 | 2025-03-04   | 2025-03-08 |
|          5 |          5 |           105 | 2025-03-05   | 2025-03-09 |
+------------+------------+---------------+--------------+------------+
5 rows in set (0.00 sec)

mysql>  INSERT INTO Facturas (id_reserva, total, fecha_emision) VALUES (1, 250.00, '2025-03-01'), (2, 320.00, '2025-03-02'), (3, 450.00, '2025-03-03'), (4, 300.00, '2025-03-04'), (5, 275.00, '2025-03-05');
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from VistaReservasClientesHabitaciones;
Empty set (0.00 sec)
mysql> select * from Facturas;
+------------+------------+--------+--------+---------------+
| id_factura | id_reserva | cedula | total  | fecha_emision |
+------------+------------+--------+--------+---------------+
|          1 |          1 |   NULL | 250.00 | 2025-03-01    |
|          2 |          2 |   NULL | 320.00 | 2025-03-02    |
|          3 |          3 |   NULL | 450.00 | 2025-03-03    |
|          4 |          4 |   NULL | 300.00 | 2025-03-04    |
|          5 |          5 |   NULL | 275.00 | 2025-03-05    |
+------------+------------+--------+--------+---------------+
5 rows in set (0.00 sec)


mysql> CREATE VIEW VistaHabitacionesDisponibles AS SELECT numero, tipo, precio_noche FROM Habitaciones WHERE estado = 'libre';
Empty set (0.00 sec)
mysql> SELECT * FROM VistaHabitacionesDisponibles;
+--------+------------+--------------+
| numero | tipo       | precio_noche |
+--------+------------+--------------+
|    101 | individual |        50.00 |
|    103 | suite      |       150.00 |
|    105 | individual |        55.00 |
+--------+------------+--------------+
3 rows in set (0.00 sec)

mysql>CREATE VIEW VistaFacturacionReservas AS SELECT f.id_factura, f.total, f.fecha_emision, r.fecha_inicio, r.fecha_fin, c.nombre AS Cliente, c.apellido AS Apellido FROM Facturas f JOIN Reservas r ON f.id_reserva = r.id_reserva JOIN Clientes c ON r.id_cliente = c.id_cliente;

mysql> select * from VistaFacturacionReservas;
+------------+--------+---------------+--------------+------------+----------+----------+
| id_factura | total  | fecha_emision | fecha_inicio | fecha_fin  | Cliente  | Apellido |
+------------+--------+---------------+--------------+------------+----------+----------+
|          1 | 250.00 | 2025-03-01    | 2025-03-01   | 2025-03-05 | Emily    | Zambrano |
|          2 | 320.00 | 2025-03-02    | 2025-03-02   | 2025-03-06 | Damaris  | SÃ¡nchez  |
|          3 | 450.00 | 2025-03-03    | 2025-03-03   | 2025-03-07 | Carlos   | GarcÃ­a   |
|          4 | 300.00 | 2025-03-04    | 2025-03-04   | 2025-03-08 | Kenia    | LÃ³pez    |
|          5 | 275.00 | 2025-03-05    | 2025-03-05   | 2025-03-09 | Santiago | Torres   |
+------------+--------+---------------+--------------+------------+----------+----------+
5 rows in set (0.00 sec)

mysql>CREATE VIEW VistaEstadoHabitaciones AS SELECT h.numero AS Habitacion, h.tipo AS Tipo, h.estado, h.precio_noche FROM Habitaciones h;

mysql> select * from VistaReservasClientesHabitaciones;
Empty set (0.00 sec)

mysql> select * from VistaEstadoHabitaciones;
+------------+------------+---------+--------------+
| Habitacion | Tipo       | estado  | precio_noche |
+------------+------------+---------+--------------+
|        101 | individual | libre   |        50.00 |
|        102 | doble      | ocupada |        80.00 |
|        103 | suite      | libre   |       150.00 |
|        104 | doble      | ocupada |        75.00 |
|        105 | individual | libre   |        55.00 |
+------------+------------+---------+--------------+
5 rows in set (0.00 sec)




