Está en la página 1de 3

DROP TABLE IF EXISTS Cliente;

DROP TABLE IF EXISTS Producto;


DROP TABLE IF EXISTS Pedido;
DROP TABLE IF EXISTS DetallePedido;
DROP TABLE IF EXISTS Categoria;
DROP TABLE IF EXISTS DetallePedido_Producto;

CREATE TABLE Cliente (


id_Cliente INT PRIMARY KEY,
Nombre VARCHAR(50),
Email VARCHAR(80) UNIQUE,
Telefono VARCHAR(10),
Direccion VARCHAR(100)
);

INSERT INTO Cliente (id_Cliente, Nombre, Email, Telefono, Direccion)


VALUES
(01, 'Juan Pérez', 'juan@gmail.com', '123456789', 'Calle 123, giron'),
(02, 'María García', 'maria@hotmail.com', '987654321', 'Avenida 456,
bucaramanga'),
(03, 'Pedro López', 'pedro@outlook.com', '456789123', 'Calle 789, cucuta'),
(04, 'Ana Martínez', 'ana@gmail.com', '321654987', 'Avenida 987, curiti'),
(05, 'Sofía Rodríguez', 'sofia@hotmail.com', '654321789', 'Calle 456,
floridablanca'),
(06, 'Diego Hernández', 'diego@outlook.com', '789123456', 'Avenida 321,
piedecuesta'),
(07, 'Laura Díaz', 'laura@gmail.com', '159263478', 'Calle 852, Ciudad'),
(08, 'Carlos Sánchez', 'carlos@hotmail.com', '852369741', 'Avenida 147,
bucaramanga'),
(09, 'Luisa Pérez', 'luisa@outlook.com', '369147258', 'Calle 369, giron'),
(10, 'Jorge Gómez', 'jorge@gmail.com', '147258369', 'Avenida 258, curiti');

CREATE TABLE Producto (


id_Producto INT PRIMARY KEY,
Nombre VARCHAR(50),
Descripcion VARCHAR(100),
Precio DECIMAL(10,2),
Inventario INT CHECK (Inventario >= 0)
);

INSERT INTO Producto (id_Producto, Nombre, Descripcion, Precio, Inventario)


VALUES
(01, 'Producto A', 'Descripcion del Producto A', 10.99, 100),
(02, 'Producto B', 'Descripcion del Producto B', 20.50, 50),
(03, 'Producto C', 'Descripcion del Producto C', 15.75, 75),
(04, 'Producto D', 'Descripcion del Producto D', 8.25, 200),
(05, 'Producto E', 'Descripcion del Producto E', 30.00, 30),
(06, 'Producto F', 'Descripcion del Producto F', 12.99, 80),
(07, 'Producto G', 'Descripcion del Producto G', 25.49, 45),
(08, 'Producto H', 'Descripcion del Producto H', 18.75, 60),
(09, 'Producto I', 'Descripcion del Producto I', 22.00, 100),
(10, 'Producto J', 'Descripcion del Producto J', 5.99, 150);
CREATE TABLE Pedido (
id_Pedido INT PRIMARY KEY,
id_Cliente INT,
Fecha DATE,
Estado VARCHAR(80),
FOREIGN KEY (id_Cliente) REFERENCES Cliente(id_Cliente),
CONSTRAINT chk_estado CHECK (Estado IN ('Pendiente', 'Enviado', 'Entregado'))
);

INSERT INTO Pedido (id_Pedido, id_Cliente, Fecha, Estado)


VALUES
(01, 01, '2024-04-25', 'Pendiente'),
(02, 02, '2024-04-26', 'Enviado'),
(03, 03, '2024-04-27', 'Pendiente'),
(04, 04, '2024-04-28', 'Entregado'),
(05, 05, '2024-04-29', 'Pendiente'),
(06, 06, '2024-04-30', 'Enviado'),
(07, 07, '2024-05-01', 'Pendiente'),
(08, 08, '2024-05-02', 'Pendiente'),
(09, 09, '2024-05-03', 'Pendiente'),
(10, 10, '2024-05-04', 'Enviado');

CREATE TABLE DetallePedido (


id_Detalle INT PRIMARY KEY,
id_Pedido INT,
Cantidad INT,
Subtotal DECIMAL(10,2),
FOREIGN KEY (ID_Pedido) REFERENCES Pedido(ID_Pedido),
CONSTRAINT chk_cantidad_subtotal CHECK (Cantidad > 0 AND Subtotal > 0)
);

INSERT INTO DetallePedido (id_Detalle, id_Pedido, Cantidad, Subtotal)


VALUES
(01, 01, 2, 21.98),
(02, 02, 1, 10.99),
(03, 03, 3, 61.50),
(04, 04, 1, 8.25),
(05, 05, 5, 102.50),
(06, 06, 2, 60.00),
(07, 07, 4, 51.96),
(08, 08, 1, 25.49),
(09, 09, 2, 37.50),
(10, 10, 3, 66.00));

CREATE TABLE Categoria (


id_Categoria INT PRIMARY KEY,
Nombre VARCHAR(50) UNIQUE
);

INSERT INTO Categoria (id_Categoria, Nombre)


VALUES
(1, 'Electronica'),
(2, 'Ropa'),
(3, 'Hogar'),
(4, 'Juguetes'),
(5, 'Alimentos');

CREATE TABLE DetallePedido_Producto (


id_Detalle INT,
id_Producto INT,
PRIMARY KEY (id_Detalle, id_Producto),
FOREIGN KEY (id_Detalle) REFERENCES DetallePedido(id_Detalle),
FOREIGN KEY (id_Producto) REFERENCES Producto(id_Producto)
);

También podría gustarte