Basededatoscomercioelectronico

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 4

-- Creación de la base de datos

CREATE DATABASE ComercioElectronico;


GO

USE ComercioElectronico;
GO

-- Creación de la tabla Departamentos


CREATE TABLE Departamentos (
DepartamentoID INT PRIMARY KEY,
Nombre NVARCHAR(100)
);

-- Inserción de datos en Departamentos


INSERT INTO Departamentos (DepartamentoID, Nombre) VALUES
(1, 'Finanzas'),
(2, 'Logística'),
(3, 'Marketing'),
(4, 'Ventas'),
(5, 'Tecnología'),
(6, 'Recursos Humanos');

-- Creación de la tabla Proveedores


CREATE TABLE Proveedores (
ProveedorID INT PRIMARY KEY,
Nombre NVARCHAR(100),
Telefono NVARCHAR(15),
Correo NVARCHAR(100),
Ciudad NVARCHAR(50),
DepartamentoID INT,
FOREIGN KEY (DepartamentoID) REFERENCES Departamentos(DepartamentoID) --
Relación con Departamentos
);

-- Inserción de datos en Proveedores


INSERT INTO Proveedores (ProveedorID, Nombre, Telefono, Correo, Ciudad,
DepartamentoID) VALUES
(1, 'Proveedor A', '123456789', '[email protected]', 'Ciudad A', 5),
(2, 'Proveedor B', '987654321', '[email protected]', 'Ciudad B', 2),
(3, 'Proveedor C', '555555555', '[email protected]', 'Ciudad C', 1),
(4, 'Proveedor D', '666666666', '[email protected]', 'Ciudad D', 3);

-- Creación de la tabla Usuarios


CREATE TABLE Usuarios (
UsuarioID INT PRIMARY KEY,
Nombre NVARCHAR(100),
Correo NVARCHAR(100) UNIQUE,
Telefono NVARCHAR(15),
Direccion NVARCHAR(255),
FechaRegistro DATE,
DepartamentoID INT, -- Agregando relación con Departamentos
FOREIGN KEY (DepartamentoID) REFERENCES Departamentos(DepartamentoID)
);

-- Inserción de datos en Usuarios


INSERT INTO Usuarios (UsuarioID, Nombre, Correo, Telefono, Direccion,
FechaRegistro, DepartamentoID) VALUES
(1, 'Juan Perez', '[email protected]', '123456789', 'Av. Siempre Viva 123',
'2022-01-10', 4),
(2, 'Ana Gomez', '[email protected]', '987654321', 'Calle Falsa 456', '2022-
03-15', 1),
(3, 'Luis Fernandez', '[email protected]', '555555555', 'Av. Sol 789', '2022-
05-22', 3),
(4, 'Maria Lopez', '[email protected]', '444444444', 'Calle Luna 321',
'2022-06-30', 2);

-- Creación de la tabla Categorias


CREATE TABLE Categorias (
CategoriaID INT PRIMARY KEY,
Nombre NVARCHAR(50)
);

-- Inserción de datos en Categorias


INSERT INTO Categorias (CategoriaID, Nombre) VALUES
(1, 'Electrónica'),
(2, 'Accesorios'),
(3, 'Hogar'),
(4, 'Juguetes'),
(5, 'Ropa');

-- Creación de la tabla Productos


CREATE TABLE Productos (
ProductoID INT PRIMARY KEY,
Nombre NVARCHAR(100),
Precio DECIMAL(10, 2),
CategoriaID INT,
ProveedorID INT, -- Relación con Proveedores
FechaAgregado DATE,
FOREIGN KEY (CategoriaID) REFERENCES Categorias(CategoriaID),
FOREIGN KEY (ProveedorID) REFERENCES Proveedores(ProveedorID) --
Relación con Proveedores
);

-- Inserción de datos en Productos


INSERT INTO Productos (ProductoID, Nombre, Precio, CategoriaID, ProveedorID,
FechaAgregado) VALUES
(1, 'Laptop A', 1500.00, 1, 1, '2022-01-01'),
(2, 'Mouse B', 25.00, 2, 1, '2022-01-15'),
(3, 'Aspiradora X', 200.00, 3, 2, '2022-02-01'),
(4, 'Cámara Z', 450.00, 1, 3, '2022-03-05'),
(5, 'Ropa Casual', 30.00, 5, 4, '2022-04-10');

-- Creación de la tabla Pedidos


CREATE TABLE Pedidos (
PedidoID INT PRIMARY KEY,
UsuarioID INT,
FechaPedido DATE,
TotalPedido DECIMAL(10, 2),
Estado NVARCHAR(50),
FOREIGN KEY (UsuarioID) REFERENCES Usuarios(UsuarioID)
);

-- Inserción de datos en Pedidos


INSERT INTO Pedidos (PedidoID, UsuarioID, FechaPedido, TotalPedido, Estado)
VALUES
(1, 1, '2023-01-10', 500.00, 'Enviado'),
(2, 2, '2023-01-15', 700.00, 'Pendiente'),
(3, 3, '2023-01-20', 1500.00, 'Completado'),
(4, 4, '2023-01-25', 300.00, 'Enviado');

-- Creación de la tabla DetallesPedidos


CREATE TABLE DetallesPedidos (
DetalleID INT PRIMARY KEY,
PedidoID INT,
ProductoID INT,
Cantidad INT,
PrecioUnitario DECIMAL(10, 2),
FOREIGN KEY (PedidoID) REFERENCES Pedidos(PedidoID),
FOREIGN KEY (ProductoID) REFERENCES Productos(ProductoID)
);

-- Inserción de datos en DetallesPedidos


INSERT INTO DetallesPedidos (DetalleID, PedidoID, ProductoID, Cantidad,
PrecioUnitario) VALUES
(1, 1, 1, 2, 1500.00),
(2, 1, 2, 1, 25.00),
(3, 2, 3, 2, 200.00),
(4, 3, 4, 1, 450.00),
(5, 4, 5, 3, 30.00);

-- Creación de la tabla Inventario


CREATE TABLE Inventario (
InventarioID INT PRIMARY KEY,
ProductoID INT,
CantidadDisponible INT,
FechaActualizacion DATE,
FOREIGN KEY (ProductoID) REFERENCES Productos(ProductoID)
);

-- Inserción de datos en Inventario


INSERT INTO Inventario (InventarioID, ProductoID, CantidadDisponible,
FechaActualizacion) VALUES
(1, 1, 50, '2023-01-10'),
(2, 2, 100, '2023-01-15'),
(3, 3, 30, '2023-01-20'),
(4, 4, 25, '2023-01-25'),
(5, 5, 40, '2023-01-30');

-- Creación de la tabla HistorialPrecios


CREATE TABLE HistorialPrecios (
HistorialID INT PRIMARY KEY,
ProductoID INT,
PrecioAnterior DECIMAL(10, 2),
FechaCambio DATE,
FOREIGN KEY (ProductoID) REFERENCES Productos(ProductoID)
);

-- Inserción de datos en HistorialPrecios


INSERT INTO HistorialPrecios (HistorialID, ProductoID, PrecioAnterior,
FechaCambio) VALUES
(1, 1, 1400.00, '2022-12-01'),
(2, 2, 20.00, '2022-11-01'),
(3, 3, 150.00, '2022-10-15'),
(4, 4, 400.00, '2022-09-01'),
(5, 5, 25.00, '2022-08-01');

-- Creación de la tabla Envíos


CREATE TABLE Envíos (
EnvíoID INT PRIMARY KEY,
PedidoID INT,
FechaEnvio DATE,
FechaEntregaEstimada DATE,
Estado NVARCHAR(50),
FOREIGN KEY (PedidoID) REFERENCES Pedidos(PedidoID)
);

-- Inserción de datos en Envíos


INSERT INTO Envíos (EnvíoID, PedidoID, FechaEnvio, FechaEntregaEstimada,
Estado) VALUES
(1, 1, '2023-01-11', '2023-01-15', 'En camino'),
(2, 2, '2023-01-16', '2023-01-20', 'Pendiente'),
(3, 3, '2023-01-21', '2023-01-25', 'Completado'),
(4, 4, '2023-01-26', '2023-01-30', 'En camino');

-- Creación de la tabla Auditoria


CREATE TABLE Auditoria (
AuditoriaID INT PRIMARY KEY,
UsuarioID INT,
FechaHora DATETIME,
Accion NVARCHAR(50),
Detalle NVARCHAR(255),
FOREIGN KEY (UsuarioID) REFERENCES Usuarios(UsuarioID)
);

-- Inserción de datos en Auditoria


INSERT INTO Auditoria (AuditoriaID, UsuarioID, FechaHora, Accion, Detalle)
VALUES
(1, 1, '2023-01-10 10:00:00', 'INSERT', 'Se agregó un nuevo producto'),
(2, 2, '2023-01-11 12:30:00', 'UPDATE', 'Se actualizó el inventario'),
(3, 3, '2023-01-12 14:00:00', 'DELETE', 'Se eliminó un proveedor'),
(4, 4, '2023-01-13 16:15:00', 'INSERT', 'Se creó un nuevo pedido');

También podría gustarte