Está en la página 1de 11

Instituto Tecnológico de Las Américas

Asignatura

Introducción a las bases de datos

Docente

José A. de Jesús Alcántara

Alumno

David Domínguez

Matricula

2023-0234

Fecha de entrega

31/07/2023

David Domínguez 2023-0234


Base de datos: Restaurante
Esta base de datos está basada en el sistema de almacenamiento de datos de
un restaurante, el cual consta de cinco tablas: Clientes, Menú, Orden, Detalle de
la Orden y la tabla Empleados. Toda la base de datos está normalizada hasta la
tercera forma normal. Estas son las características de las tablas:
Tabla Clientes:
• Nombre de la tabla: cliente
• Campos:
• id_cliente: Identificador único del cliente. Es la clave primaria de la tabla
y se utiliza para identificar de manera única a cada cliente.
• nombre: Almacena el nombre del cliente, con un límite de 20 caracteres.
• apellido: Contiene el apellido del cliente, con un límite de 20 caracteres.
• telefono: Guarda el número de teléfono del cliente, con un límite de 15
caracteres.
• email: Almacena la dirección de correo electrónico del cliente, con un
límite de 150 caracteres.

Funcionamiento: La tabla de Clientes se utiliza para almacenar información


sobre los clientes que interactúan con el negocio. Cada registro representa un
cliente distinto, y el campo id_cliente se utiliza como clave única para
identificarlos. Se pueden realizar operaciones como agregar nuevos clientes,
actualizar sus datos o eliminar clientes existentes.

David Domínguez 2023-0234


Tabla Menú:
• Nombre de la tabla: menu
• Campos:
• id_plato: Identificador único del plato en el menú. Es la clave primaria de
la tabla y se utiliza para identificar de manera única a cada plato.
• nombre: Contiene el nombre del plato, con un límite de 30 caracteres.
• descricion: Almacena una descripción del plato, con un límite de 100
caracteres.
• precio: Guarda el precio del plato, representado como un número decimal
con 10 dígitos en total y 2 decimales.

Funcionamiento: La tabla de Menú se utiliza para almacenar los platos ofrecidos


por el negocio. Cada registro representa un plato en el menú, y el campo
id_plato se utiliza como clave única para identificarlos. Se pueden realizar
operaciones como agregar nuevos platos, actualizar su información o eliminar
platos existentes.

Tabla Orden:
• Nombre de la tabla: orden
• Campos:
• id_orden: Identificador único de la orden. Es la clave primaria de la tabla
y se utiliza para identificar de manera única cada orden realizada.
• id_cliente: Es una clave foránea que se relaciona con el campo id_cliente
de la tabla Clientes, lo que permite asociar una orden a un cliente
específico.
• fecha_hora: Almacena la fecha y hora en que se realizó la orden.

David Domínguez 2023-0234


• mesa: Representa el número de la mesa en la que se realizó la orden.
• total: Contiene el total de la orden, representado como un número
decimal con 10 dígitos en total y 2 decimales.

Funcionamiento: La tabla de Orden se utiliza para almacenar la información


sobre las órdenes realizadas por los clientes. Cada registro representa una orden
distinta, y el campo id_orden se utiliza como clave única para identificarlas. El
campo id_cliente permite vincular cada orden con el cliente que la realizó. Se
pueden realizar operaciones como agregar nuevas órdenes, actualizar sus datos
o eliminar órdenes existentes.

Tabla Detalle de la Orden:


• Nombre de la tabla: detalle_orden
• Campos:
• id_detalle: Identificador único del detalle de la orden. Es la clave primaria
de la tabla y se utiliza para identificar de manera única cada elemento del
detalle de una orden.
• id_orden: Es una clave foránea que se relaciona con el campo id_orden
de la tabla Orden, lo que permite asociar cada detalle a una orden
específica.

David Domínguez 2023-0234


• id_plato: Es una clave foránea que se relaciona con el campo id_plato de
la tabla Menú, lo que permite asociar un plato específico al detalle de una
orden.
• cantidad: Contiene la cantidad de platos del mismo tipo que se agregaron
a la orden.
• subtotal: Almacena el subtotal del detalle, que es el costo total de los
platos del mismo tipo multiplicado por la cantidad, representado como
un número decimal con 10 dígitos en total y 2 decimales.

Funcionamiento: La tabla de Detalle de la Orden se utiliza para almacenar la


información detallada de cada orden realizada. Cada registro representa un
detalle distinto, y el campo id_detalle se utiliza como clave única para
identificarlos. Los campos id_orden y id_plato permiten vincular cada detalle
con la orden a la que pertenece y con el plato que se ha agregado al detalle. Se
pueden realizar operaciones como agregar nuevos detalles, actualizar sus datos
o eliminar detalles existentes.

Tabla Empleados:
• Nombre de la tabla: empleados

David Domínguez 2023-0234


• Campos:
• id_empleado: Identificador único del empleado. Es la clave primaria de la
tabla y se utiliza para identificar de manera única a cada empleado.
• nombre: Contiene el nombre del empleado, con un límite de 20
caracteres.
• apellido: Almacena el apellido del empleado, con un límite de 20
caracteres.
• puesto: Representa el puesto o cargo que ocupa el empleado, con un
límite de 10 caracteres.
• fecha_contratacion: Guarda la fecha en la que el empleado fue
contratado.
• salario: Almacena el salario del empleado, representado como un número
decimal con 10 dígitos en total y 2 decimales.

Funcionamiento: La tabla de Empleados se utiliza para almacenar información


sobre los empleados del negocio. Cada registro representa un empleado
distinto, y el campo id_empleado se utiliza como clave única para identificarlos.
Se pueden realizar operaciones como agregar nuevos empleados, actualizar sus
datos o eliminar empleados existentes. La información de los empleados puede
ser útil para la gestión de recursos humanos y el cálculo de la nómina.

Diagrama de la base de datos:

David Domínguez 2023-0234


Scirpt:
--create database Restaurante
--go

--use Restaurante

---Tabla Clientes---
create table cliente (
id_cliente int primary key,
nombre varchar (20),
apelido varchar (20),
telefono varchar (15),
email varchar (150)
)

---Tabla Menú---
create table menu (
id_plato int primary key,
David Domínguez 2023-0234
nombre varchar (30),
descricion varchar (100),
precio decimal (10,2)
)

---Tabla Orden---
create table orden (
id_orden int primary key,
id_cliente int,
foreign key (id_cliente) references cliente (id_cliente),
fecha_hora datetime,
mesa int,
total decimal (10,2)
)

---Tabla Detalle de la Orden---


create table detalle_orden (
id_detalle int primary key,
id_orden int
foreign key (id_orden) references orden (id_orden),
id_plato int,
foreign key (id_plato) references menu (id_plato),
cantidad int,
subtotal decimal (10, 2)
)

---Tabla Empleados---

David Domínguez 2023-0234


create table empleados (
id_empleado int primary key,
nombre varchar (20),
apellido varchar (20),
puesto varchar (10),
fecha_contratacion date,
salario decimal (10, 2)
)

---Registros de Clientes---
INSERT INTO cliente VALUES (1, 'Juan', 'Pérez', '809-988-
2732', 'juan.perez@example.com');
INSERT INTO cliente VALUES (2, 'María', 'López', '829-233-
2312', 'maria.lopez@example.com');
INSERT INTO cliente VALUES (3, 'Carlos', 'Gómez', '829-
293-2934', 'carlos.gomez@example.com');
INSERT INTO cliente VALUES (4, 'Ana', 'Ramírez', '809-344-
8987', 'ana.ramirez@example.com');
INSERT INTO cliente VALUES (5, 'Pedro', 'García', '829-
887-5656', 'pedro.garcia@example.com');
INSERT INTO cliente VALUES (6, 'Laura', 'Hernández', '809-
989-3455', 'laura.hernandez@example.com');

select * from cliente

---Registos de Menú---
INSERT INTO menu VALUES (1, 'Hamburguesa Clásica', 'Carne,
lechuga, tomate y queso cheddar', 9.99);
INSERT INTO menu VALUES (2, 'Pizza Margarita', 'Masa de
pizza, tomate y queso mozzarella', 8.50);
David Domínguez 2023-0234
INSERT INTO menu VALUES (3, 'Ensalada César', 'Lechuga,
pollo, croutones y aderezo César', 7.95);
INSERT INTO menu VALUES (4, 'Sushi Variado', 'Salmón,
atún, langostino y aguacate', 12.75);
INSERT INTO menu VALUES (5, 'Pasta Alfredo', 'Pasta con
salsa alfredo y champiñones', 10.50);
INSERT INTO menu VALUES (6, 'Pollo a la Parrilla',
'Pechuga de pollo a la parrilla', 11.25);

select * from menu

---Registros de Orden---
INSERT INTO orden VALUES (1, 3, '2023-07-30 12:30:00', 3,
29.94);
INSERT INTO orden VALUES (2, 2, '2023-07-30 13:15:00', 1,
16.45);
INSERT INTO orden VALUES (3, 1, '2023-07-30 19:00:00', 5,
17.00);
INSERT INTO orden VALUES (4, 4, '2023-07-30 20:45:00', 2,
12.75);
INSERT INTO orden VALUES (5, 5, '2023-07-30 21:30:00', 4,
31.50);
INSERT INTO orden VALUES (6, 6, '2023-07-30 22:00:00', 6,
23.75);

select * from orden

---Registros de Detalles de la Orden---


INSERT INTO detalle_orden VALUES (1, 1, 1, 2, 19.98);
INSERT INTO detalle_orden VALUES (2, 1, 3, 1, 7.95);

David Domínguez 2023-0234


INSERT INTO detalle_orden VALUES (3, 2, 2, 2, 17.00);
INSERT INTO detalle_orden VALUES (4, 3, 4, 1, 12.75);
INSERT INTO detalle_orden VALUES (5, 4, 5, 1, 10.50);
INSERT INTO detalle_orden VALUES (6, 5, 6, 2, 22.50);

select * from detalle_orden

---Registros de Empleados---
INSERT INTO empleados VALUES (1, 'Luis', 'Martínez',
'Cocinero', '2022-02-15', 2000.00);
INSERT INTO empleados VALUES (2, 'Ana', 'Gómez', 'Mesera',
'2021-11-03', 1500.00);
INSERT INTO empleados VALUES (3, 'Carlos', 'Ruíz',
'Camarero', '2023-04-22', 1800.00);
INSERT INTO empleados VALUES (4, 'Laura', 'Hernández',
'Cocinera', '2023-01-10', 1900.00);
INSERT INTO empleados VALUES (5, 'Miguel', 'López',
'Barman', '2023-06-08', 1600.00);
INSERT INTO empleados VALUES (6, 'María', 'García',
'Camarera', '2023-03-18', 1750.00);

select * from empleados

David Domínguez 2023-0234

También podría gustarte