Skip to content

Base de datos llamada Ventas Negocio que corresponde a la cuarta parte, contiene dos tablas y cinco consultas

Notifications You must be signed in to change notification settings

KathyAlde21/ventas_negocio_parte_4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

🖖 Base de Datos Ventas Negocio Versión Tres 💻

📘 Contexto de la Actividad:

Este ejercicio es la continuación de los ejercicios individuales del día anterior

Un negocio minorista desea llevar registro de las ventas diarias realizadas. Para ello ha creado el siguiente modelo de datos.

Wireframe Base de Datos

📙 Requerimientos:

En un archivo de texto, agregue las siguientes consultas:

  • Genere una consulta de inserción de datos en la tabla clientes. Inserte un registro indicando solo los campos que no permiten valores nulos.
  • Genere dos consultas de inserción de datos en la tabla de ventas. Inserte dos registros distintos de esta manera, usando dos sintaxis diversas. Ambas ventas ingresadas deben estar asociadas al cliente ingresado en el ítem anterior.
  • Incluya un comando para confirmar los cambios incluidos en las sentencias anteriores.
  • Genere una consulta que modifique el registro ingresado en el ítem 1 de este ejercicio, en específico otorgando valores a los campos que están nulos.
  • Incluya un comando para deshacer los cambios realizados anteriormente.
  • Todas las consultas anteriores deben estar en un mismo archivo, y deben ser parte de una misma transacción. Por ello, tenga en consideración el formato a indicar en cada consulta.

📗 Construcción de la Base de Datos:

Creando la base de datos con las tablas ventas y clientes:

CREATE TABLE clientes (
  idcliente INT PRIMARY KEY NOT NULL,
  nombres   VARCHAR(50) NOT NULL,
  apellidos VARCHAR(50) NOT NULL,
  direccion VARCHAR(70),
  telefono  INT
);

CREATE TABLE ventas (
  idventa INT PRIMARY KEY NOT NULL,
  vendedor VARCHAR(50),
  cantarticulos INT NOT NULL,
  subtotal INT NOT NULL,
  impuesto INT NOT NULL,
  total INT NOT NULL,
  clientes_idcliente INT NOT NULL
);

ALTER TABLE ventas
ADD CONSTRAINT ventas_clientes_fk 
FOREIGN KEY ( clientes_idcliente )
REFERENCES clientes ( idcliente );

Alimentando la base de datos:

INSERT INTO clientes (idcliente, nombres, apellidos, direccion, telefono) VALUES
(1, 'Antonia', 'Aranda', 'Av. Las Flores 123', 987654321),
(2, 'Matías', 'González', 'Calle Los Álamos 456', 912345678),
(3, 'Sofía', 'Rojas', 'Pasaje El Bosque 789', 956789123),
(4, 'Camila', 'Pérez', 'Av. Los Héroes 234', 965478123),
(5, 'Ignacio', 'Fernández', 'Calle O’Higgins 345', 974512369),
(6, 'Valentina', 'Morales', 'Av. Libertad 567', 923456789),
(7, 'Francisco', 'Muñoz', 'Pasaje Las Rosas 678', 954789632),
(8, 'Daniela', 'Castro', 'Calle Central 890', 936547821),
(9, 'Benjamín', 'Vega', 'Av. Los Pinos 234', 987123456),
(10, 'Isidora', 'Herrera', 'Calle Los Cipreses 456', 964523178),
(11, 'Tomás', 'Navarro', 'Av. Providencia 789', 955412367),
(12, 'Florencia', 'Lagos', 'Calle Principal 321', 932145678),
(13, 'Martín', 'Fuentes', 'Av. El Roble 432', 953214567),
(14, 'Catalina', 'Ortega', 'Pasaje El Sol 654', 976541289),
(15, 'Joaquín', 'Mendoza', 'Calle Los Naranjos 987', 945123678);

INSERT INTO ventas (idventa, vendedor, cantarticulos, subtotal, impuesto, total, clientes_idcliente) VALUES
(1, 'Luis Torres', 3, 45000, 8550, 53550, 1),
(2, 'Carla Soto', 2, 32000, 6080, 38080, 3),
(3, 'Pedro Rivas', 5, 78000, 14820, 92820, 2),
(4, 'María Díaz', 1, 15000, 2850, 17850, 5),
(5, 'Luis Torres', 4, 62000, 11780, 73780, 4),
(6, 'Carla Soto', 3, 41000, 7790, 48790, 6),
(7, 'Pedro Rivas', 6, 95000, 18050, 113050, 7),
(8, 'María Díaz', 2, 28000, 5320, 33320, 8),
(9, 'Luis Torres', 3, 36000, 6840, 42840, 9),
(10, 'Carla Soto', 5, 80000, 15200, 95200, 10),
(11, 'Pedro Rivas', 2, 25000, 4750, 29750, 12),
(12, 'María Díaz', 1, 12000, 2280, 14280, 11),
(13, 'Luis Torres', 4, 54000, 10260, 64260, 13),
(14, 'Carla Soto', 3, 39000, 7410, 46410, 14),
(15, 'Pedro Rivas', 2, 31000, 5890, 36890, 15);

📁 Estructura del Proyecto:

📁ventas_negocio_parte_4
└── README.md
└── 📁img
│    ├── 📁wireframes
│    │    └── wireframe_bbdd.jpg
│    ├── consulta_1_ejecutada.jpg
│    ├── consulta_2_ejecutada.jpg
│    ├── consulta_3_ejecutada.jpg
│    ├── consulta_4_ejecutada.jpg
│    ├── consulta_5_ejecutada.jpg
│    └── eer_diagram.jpg
└── 📁mysql
    ├── eer_diagram.mwb
    ├── 📁consultas
    │   └── cinco_consultas.sql
    ├── 📁tabla_clientes
    │   ├── alimentando_tabla_clientes.sql
    │   └── tabla_clientes.sql
    └── 📁tabla_ventas
        ├── alimentando_tabla_ventas.sql
        └── tabla_ventas.sql

📘 Consultas ejecutadas:

  1. Inserción en clientes (solo campos NOT NULL):
INSERT INTO clientes (idcliente, nombres, apellidos)
VALUES (100, 'Diego', 'Silva');

consulta uno

  1. Dos inserciones en ventas con sintaxis diferentes:
  • Sintaxis 1: Especificando columnas
INSERT INTO ventas (idventa, vendedor, cantarticulos, subtotal, impuesto, total, clientes_idcliente)
VALUES (200, 'Luis Torres', 3, 45000, 8550, 53550, 100);
  • Sintaxis 2: Todas las columnas en orden de la tabla
INSERT INTO ventas
VALUES (201, 'Carla Soto', 2, 32000, 6080, 38080, 100);

consulta dos

  1. Confirmar cambios (COMMIT):
  • Esto se usa si estás trabajando con transacciones (START TRANSACTION o autocommit desactivado).
COMMIT;

consulta tres

  1. Modificar el cliente ingresado en el ítem 1 (llenar campos nulos):
UPDATE clientes
SET direccion = 'Av. Siempre Viva 742',
    telefono = 987654321
WHERE idcliente = 100;

consulta cuatro

  1. Deshacer cambios (ROLLBACK):
  • Esto revertirá los cambios hechos desde el último COMMIT o START TRANSACTION.
ROLLBACK;

consulta cinco

📖 EER Diagram:

EER Diagram

About

Base de datos llamada Ventas Negocio que corresponde a la cuarta parte, contiene dos tablas y cinco consultas

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published