-- Tablas principales (sintaxis SQL Server)
CREATE TABLE Productos (
ProductoID INT PRIMARY KEY,
CodigoBarras VARCHAR(20) UNIQUE,
Nombre NVARCHAR(100) NOT NULL,
PrecioVenta DECIMAL(10,2) NOT NULL,
StockActual INT DEFAULT 0
);
CREATE TABLE Ventas (
VentaID INT PRIMARY KEY,
FechaVenta DATETIME DEFAULT GETDATE(), -- Función nativa de SQL Server
Total DECIMAL(12,2) NOT NULL
);
CREATE TABLE DetalleVenta (
DetalleVentaID INT PRIMARY KEY,
VentaID INT NOT NULL,
ProductoID INT NOT NULL,
Cantidad INT NOT NULL,
PrecioUnitario DECIMAL(10,2) NOT NULL,
FOREIGN KEY (VentaID) REFERENCES Ventas(VentaID),
FOREIGN KEY (ProductoID) REFERENCES Productos(ProductoID)
);
-- Datos de prueba
INSERT INTO Productos (ProductoID, CodigoBarras, Nombre, PrecioVenta, StockActual) VALUES
(1, '7501001234567', 'Pan Francés', 2.50, 100),
(2, '7501001234568', 'Croissant', 3.00, 50),
(3, '7501001234569', 'Torta de Chocolate', 15.00, 20);
INSERT INTO Ventas (VentaID, Total) VALUES
(1, 5.50),
(2, 18.00);
INSERT INTO DetalleVenta (DetalleVentaID, VentaID, ProductoID, Cantidad, PrecioUnitario) VALUES
(1, 1, 1, 2, 2.50),
(2, 1