Está en la página 1de 3

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES'; CREATE SCHEMA IF NOT EXISTS `modulo_factura` DEFAULT

CHARACTER SET utf8 COLLATE utf8_general_ci ; USE `modulo_factura` ; -- ------------------------------------------------------ Table `modulo_factura`.`grupo` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`grupo` ( `id_grupo` INT NOT NULL AUTO_INCREMENT , `tipo` VARCHAR(45) NOT NULL , PRIMARY KEY (`id_grupo`) ) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`usuario` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`usuario` ( `id_usuario` INT NOT NULL AUTO_INCREMENT , `usuario` VARCHAR(45) NOT NULL , `password` VARCHAR(256) NOT NULL , `nombres` VARCHAR(145) NOT NULL , `apellidos` VARCHAR(145) NOT NULL , `estado` VARCHAR(45) NOT NULL , `grupo_id_grupo` INT NOT NULL , PRIMARY KEY (`id_usuario`) , INDEX `fk_usuario_grupo_idx` (`grupo_id_grupo` ASC) , CONSTRAINT `fk_usuario_grupo` FOREIGN KEY (`grupo_id_grupo` ) REFERENCES `modulo_factura`.`grupo` (`id_grupo` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`categoria` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`categoria` ( `id_categoria` INT NOT NULL AUTO_INCREMENT , `nombre` VARCHAR(245) NOT NULL , PRIMARY KEY (`id_categoria`) ) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`producto` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`producto` ( `id_producto` INT NOT NULL AUTO_INCREMENT , `nombre` VARCHAR(45) NOT NULL , `ean` VARCHAR(45) NOT NULL , `descripcion` VARCHAR(45) NOT NULL , `precio` DECIMAL(8,2) NOT NULL , `iva` TINYINT(1) NOT NULL , `categoria_id_categoria` INT NOT NULL ,

PRIMARY KEY (`id_producto`) , INDEX `fk_producto_categoria1_idx` (`categoria_id_categoria` ASC) , CONSTRAINT `fk_producto_categoria1` FOREIGN KEY (`categoria_id_categoria` ) REFERENCES `modulo_factura`.`categoria` (`id_categoria` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`tipo_cliente` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`tipo_cliente` ( `id_tipo_cliente` INT NOT NULL , `tipo` VARCHAR(45) NOT NULL , PRIMARY KEY (`id_tipo_cliente`) ) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`cliente` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`cliente` ( `id_cliente` INT NOT NULL AUTO_INCREMENT , `cliente` VARCHAR(45) NOT NULL , `ciudad` VARCHAR(45) NOT NULL , `direccion` VARCHAR(45) NOT NULL , `telefonos` VARCHAR(45) NOT NULL , `correo` VARCHAR(45) NOT NULL , `tipo_cliente_id_tipo_cliente` INT NOT NULL , `ruc_ci` VARCHAR(45) NOT NULL , PRIMARY KEY (`id_cliente`) , INDEX `fk_cliente_tipo_cliente1_idx` (`tipo_cliente_id_tipo_cliente` ASC) , CONSTRAINT `fk_cliente_tipo_cliente1` FOREIGN KEY (`tipo_cliente_id_tipo_cliente` ) REFERENCES `modulo_factura`.`tipo_cliente` (`id_tipo_cliente` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`forma_pago` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`forma_pago` ( `id_forma_pago` INT NOT NULL AUTO_INCREMENT , `forma` VARCHAR(45) NOT NULL , PRIMARY KEY (`id_forma_pago`) ) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`factura` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`factura` ( `id_factura` INT NOT NULL AUTO_INCREMENT , `cliente_id_cliente` INT NOT NULL , `usuario_id_usuario` INT NOT NULL , `numero` VARCHAR(45) NOT NULL ,

`fecha_emision` DATETIME NOT NULL , `subtotal` DECIMAL(8,2) NOT NULL , `descuento` DECIMAL(8,2) NOT NULL , `iva` DECIMAL(8,2) NOT NULL , `total` DECIMAL(8,2) NOT NULL , `fecha_pago` DATETIME NULL , `forma_pago_id_forma_pago` INT NOT NULL , PRIMARY KEY (`id_factura`) , INDEX `fk_factura_cliente1_idx` (`cliente_id_cliente` ASC) , INDEX `fk_factura_usuario1_idx` (`usuario_id_usuario` ASC) , INDEX `fk_factura_forma_pago1_idx` (`forma_pago_id_forma_pago` ASC) , CONSTRAINT `fk_factura_cliente1` FOREIGN KEY (`cliente_id_cliente` ) REFERENCES `modulo_factura`.`cliente` (`id_cliente` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_factura_usuario1` FOREIGN KEY (`usuario_id_usuario` ) REFERENCES `modulo_factura`.`usuario` (`id_usuario` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_factura_forma_pago1` FOREIGN KEY (`forma_pago_id_forma_pago` ) REFERENCES `modulo_factura`.`forma_pago` (`id_forma_pago` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ------------------------------------------------------ Table `modulo_factura`.`detalle_factura` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `modulo_factura`.`detalle_factura` ( `id_factura_detalle` INT NOT NULL AUTO_INCREMENT , `producto_id_producto` INT NOT NULL , `cantidad` INT NOT NULL , `subtotal` DECIMAL(8,2) NOT NULL , `factura_id_factura` INT NOT NULL , PRIMARY KEY (`id_factura_detalle`) , INDEX `fk_factura_detalle_producto1_idx` (`producto_id_producto` ASC) , INDEX `fk_detalle_factura_factura1_idx` (`factura_id_factura` ASC) , CONSTRAINT `fk_factura_detalle_producto1` FOREIGN KEY (`producto_id_producto` ) REFERENCES `modulo_factura`.`producto` (`id_producto` ) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_detalle_factura_factura1` FOREIGN KEY (`factura_id_factura` ) REFERENCES `modulo_factura`.`factura` (`id_factura` ) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; USE `modulo_factura` ; SET SQL_MODE=@OLD_SQL_MODE; SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;