1. *******Base de Datos puntoventa********
create database puntoventa;
use puntoventa;
CREATE TABLE proveedor(
idproveedor INT NOT NULL AUTO_INCREMENT ,
nombrepro VARCHAR(255) NULL ,
direccion TEXT NULL ,
rfc VARCHAR(18) NULL ,
telefono VARCHAR(20) NULL ,
PRIMARY KEY (idproveedor))engine=myisam;
CREATE TABLE productos(
idproducto INT NOT NULL AUTO_INCREMENT ,
nombre varchar(100),
descripcion TEXT NULL ,
marca VARCHAR(45) NULL ,
precio DECIMAL(12,2) NULL ,
costo DECIMAL(12,2) NULL ,
minimo INT NULL , /*la cantidad minima del prodcuto*/
stok int, /*cantidad en stok o en tienda*/
idproveedorpro INT NOT NULL , /*un producto es obtenido de un proveedor*/
index fkindex(idproveedorpro),
PRIMARY KEY (idproducto))engine=myisam;
CREATE TABLE almacen (
idalmacen INT NOT NULL AUTO_INCREMENT ,
cantidad INT NULL ,
idproductoalm int,
index fkindex(idproductoalm), /*un producto es guardado en almacen para
despues distribuir a tienda*/
PRIMARY KEY (idalmacen))engine=myisam;
CREATE TABLE compras ( /*un comprando productos a un proveedor*/
idcompra INT NOT NULL AUTO_INCREMENT ,
fecha DATE NULL , /*fecha de la compra*/
cantidad_pro int, /*cantidad total de articulos comprados*/
total DECIMAL(12,2) NULL , /*total de dinero de los aerticulos comprados*/
idproductocom INT NOT NULL ,
index fkindex(idproductocom), /*conexion con los productos que necesitamos
comprar*/
iddetcomprascom int,
index fkindex2(iddetcomprascom),/*una compra tiene un detalle*/
PRIMARY KEY (idcompra))engine=myisam;
CREATE TABLE detcompras(
iddetcompras int not null auto_increment,
cantidad_ind INT NULL , /*cantidad individual de cada producto*/
precio DECIMAL(12,2) NULL , /*precio de compra*/
subtotal decimal(12,2), /* total de la suma a pagar por ese pro*/
primary key(iddetcompras));
CREATE TABLE cliente (
idcliente INT NOT NULL AUTO_INCREMENT ,
nombre VARCHAR(255) NULL ,
direccion TEXT NULL ,
telefono VARCHAR(20) NULL ,
PRIMARY KEY (idcliente))engine=myisam;
CREATE TABLE empleado (
idempleado INT NOT NULL AUTO_INCREMENT ,
nombre VARCHAR(255) NULL ,
direccion varchar(255) NULL ,
telefono VARCHAR(20) NULL ,
2. usuario varchar(100),
contrasenia varchar(100),
sexo CHAR(2) NULL ,
fecha_nacimiento DATE NULL ,
cargo VARCHAR(30) NULL ,
PRIMARY KEY (idempleado))engine=myisam;
CREATE TABLE ventas ( /*ES ÚNICAMENTE PARA ALMACENAR TODO EL PROCESO DE VENTA DE
UN PRODUCTO*/
idventa INT NOT NULL AUTO_INCREMENT , /*SI TIENE RELACIÓN CON EL EMPLEADO Y
EL CLIENTE*/
fecha date,
cantidadto INT NULL , /*cantidad individual de cada producto*/
total decimal(12,2), /* total de la suma a pagar por ese pro*/
idclienteven int,
idempleadoven int,
INDEX fkindex1(idclienteven),
INDEX fkindex2(idempleadoven),
PRIMARY KEY (idventa))engine=myisam;
CREATE TABLE detventas(
iddetventas int not null auto_increment,
cantidad INT NULL , /*cantidad individuall de cada producto*/
nombre varchar(255),
precio DECIMAL(12,2) NULL , /*precio de compra*/
subtotal DECIMAL(12,2),
iddetventasven int,
INDEX fkindex(iddetventasven),
/* idproductoven int, POR QUE NO ESTÁ RELACIONADO? POR QUE SI EL PRODUCTO
ACTUALIZA, SU PRECIO AFECTA LA VENTA
INDEX fkindex3(idproductoven), */
primary key(iddetventas))engine=myisam;