Sei sulla pagina 1di 11

-- MySQL Script generated by MySQL Workbench

-- Thu Feb 14 09:13:59 2019

-- Model: New Model Version: 1.0

-- MySQL Workbench Forward Engineering

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';

-- -----------------------------------------------------

-- Schema ASOFLUTOTA

-- -----------------------------------------------------

-- -----------------------------------------------------

-- Schema ASOFLUTOTA

-- -----------------------------------------------------

CREATE SCHEMA IF NOT EXISTS `ASOFLUTOTA` DEFAULT CHARACTER SET utf8 ;

USE `ASOFLUTOTA` ;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`TIPO DE DOCUMENTO`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`TIPO DE DOCUMENTO` (

`Id_tipo_de_documento` INT NOT NULL,

`Tipo_de_documento` VARCHAR(45) NOT NULL,

PRIMARY KEY (`Id_tipo_de_documento`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`CIUDAD`
-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`CIUDAD` (

`Id_ciudad` INT NOT NULL,

`Nombre_ciudad` VARCHAR(45) NOT NULL,

PRIMARY KEY (`Id_ciudad`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`PERSONA`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`PERSONA` (

`Id_persona` INT NOT NULL,

`Nombres` VARCHAR(45) NOT NULL,

`Apellidos` VARCHAR(45) NOT NULL,

`Telefono` VARCHAR(45) NOT NULL,

`Correo` VARCHAR(45) NOT NULL,

`Direccion` VARCHAR(45) NOT NULL,

`Numero_documento` VARCHAR(45) NOT NULL,

`TIPO DE DOCUMENTO_Id_tipo_de_documento` INT NOT NULL,

`CIUDAD_Id_ciudad` INT NOT NULL,

PRIMARY KEY (`Id_persona`, `TIPO DE DOCUMENTO_Id_tipo_de_documento`,


`CIUDAD_Id_ciudad`),

INDEX `fk_PERSONA_TIPO DE DOCUMENTO1_idx` (`TIPO DE


DOCUMENTO_Id_tipo_de_documento` ASC),

INDEX `fk_PERSONA_CIUDAD1_idx` (`CIUDAD_Id_ciudad` ASC),

CONSTRAINT `fk_PERSONA_TIPO DE DOCUMENTO1`

FOREIGN KEY (`TIPO DE DOCUMENTO_Id_tipo_de_documento`)

REFERENCES `ASOFLUTOTA`.`TIPO DE DOCUMENTO` (`Id_tipo_de_documento`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_PERSONA_CIUDAD1`
FOREIGN KEY (`CIUDAD_Id_ciudad`)

REFERENCES `ASOFLUTOTA`.`CIUDAD` (`Id_ciudad`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`RUTA`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`RUTA` (

`Id_ruta` INT NOT NULL,

`Origen _de_ ruta` INT NOT NULL,

`Destino _ruta` VARCHAR(45) NOT NULL,

PRIMARY KEY (`Id_ruta`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`TIQUETE`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`TIQUETE` (

`Id_tiquete` INT NOT NULL,

`Codigo` INT NOT NULL,

`Fecha_ de_ expedicion` VARCHAR(45) NOT NULL,

`Fecha _de_ salida` VARCHAR(45) NOT NULL,

`Numero_ de_ patente` VARCHAR(45) NOT NULL,

`Empresa` VARCHAR(45) NOT NULL,

`Hora_ de_ salida` VARCHAR(45) NOT NULL,

`Numero _de_ poliza` VARCHAR(45) NOT NULL,

`Numero_ de_ silla` VARCHAR(45) NOT NULL,


`Nombre_ del_ despachador` VARCHAR(45) NOT NULL,

`RUTA_Id_ruta` INT NOT NULL,

PRIMARY KEY (`Id_tiquete`, `RUTA_Id_ruta`),

INDEX `fk_TIQUETE_RUTA1_idx` (`RUTA_Id_ruta` ASC),

CONSTRAINT `fk_TIQUETE_RUTA1`

FOREIGN KEY (`RUTA_Id_ruta`)

REFERENCES `ASOFLUTOTA`.`RUTA` (`Id_ruta`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`Cliente`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`Cliente` (

`Id_cliente` INT NOT NULL,

`PERSONA_Id_persona` INT NOT NULL,

`TIQUETE_Id_tiquete` INT NOT NULL,

PRIMARY KEY (`Id_cliente`, `PERSONA_Id_persona`, `TIQUETE_Id_tiquete`),

INDEX `fk_Cliente_PERSONA1_idx` (`PERSONA_Id_persona` ASC),

INDEX `fk_Cliente_TIQUETE1_idx` (`TIQUETE_Id_tiquete` ASC),

CONSTRAINT `fk_Cliente_PERSONA1`

FOREIGN KEY (`PERSONA_Id_persona`)

REFERENCES `ASOFLUTOTA`.`PERSONA` (`Id_persona`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_Cliente_TIQUETE1`

FOREIGN KEY (`TIQUETE_Id_tiquete`)

REFERENCES `ASOFLUTOTA`.`TIQUETE` (`Id_tiquete`)

ON DELETE NO ACTION
ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`TIPO DE PAGO`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`TIPO DE PAGO` (

`Id_pago` INT NOT NULL,

`Metodo_pago` INT NOT NULL,

PRIMARY KEY (`Id_pago`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`TARIFA`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`TARIFA` (

`Id_tarifa` INT NOT NULL,

`fecha de pago` VARCHAR(45) CHARACTER SET 'big5' COLLATE 'big5_chinese_ci' NOT NULL,

`TIQUETE_Id_tiquete` INT NOT NULL,

`TIPO DE PAGO_Id_pago` INT NOT NULL,

PRIMARY KEY (`Id_tarifa`, `TIQUETE_Id_tiquete`, `TIPO DE PAGO_Id_pago`),

INDEX `fk_TARIFA_TIQUETE1_idx` (`TIQUETE_Id_tiquete` ASC),

INDEX `fk_TARIFA_TIPO DE PAGO1_idx` (`TIPO DE PAGO_Id_pago` ASC),

CONSTRAINT `fk_TARIFA_TIQUETE1`

FOREIGN KEY (`TIQUETE_Id_tiquete`)

REFERENCES `ASOFLUTOTA`.`TIQUETE` (`Id_tiquete`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_TARIFA_TIPO DE PAGO1`


FOREIGN KEY (`TIPO DE PAGO_Id_pago`)

REFERENCES `ASOFLUTOTA`.`TIPO DE PAGO` (`Id_pago`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`MOTORISTA`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`MOTORISTA` (

`Id_motorista` INT NOT NULL,

`Nombre_ motorista` INT NOT NULL,

`Telefono` VARCHAR(45) NOT NULL,

`PERSONA_Id_persona` INT NOT NULL,

PRIMARY KEY (`Id_motorista`, `PERSONA_Id_persona`),

INDEX `fk_MOTORISTA_PERSONA1_idx` (`PERSONA_Id_persona` ASC),

CONSTRAINT `fk_MOTORISTA_PERSONA1`

FOREIGN KEY (`PERSONA_Id_persona`)

REFERENCES `ASOFLUTOTA`.`PERSONA` (`Id_persona`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`PROVEEDOR`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`PROVEEDOR` (

`Id_proveedor` VARCHAR(45) NOT NULL,

`Producto` INT NOT NULL,


`Cantidad` VARCHAR(45) NOT NULL,

PRIMARY KEY (`Id_proveedor`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`INSUMO`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`INSUMO` (

`Id_insumo` INT NOT NULL,

`Descripcion` VARCHAR(45) NOT NULL,

`Precio` VARCHAR(45) NOT NULL,

`PROVEEDOR_Id_proveedor` VARCHAR(45) NOT NULL,

PRIMARY KEY (`Id_insumo`, `PROVEEDOR_Id_proveedor`),

INDEX `fk_INSUMO_PROVEEDOR1_idx` (`PROVEEDOR_Id_proveedor` ASC),

CONSTRAINT `fk_INSUMO_PROVEEDOR1`

FOREIGN KEY (`PROVEEDOR_Id_proveedor`)

REFERENCES `ASOFLUTOTA`.`PROVEEDOR` (`Id_proveedor`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`EMBARCACION`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`EMBARCACION` (

`Id_embarcacion` INT NOT NULL,

`Numero _de_ patente` INT NOT NULL,

`Cantidad_ de_ pasajeros` VARCHAR(45) NOT NULL,

`Tiquete` VARCHAR(45) NOT NULL,


`MOTORISTA_Id_motorista` INT NOT NULL,

`MOTORISTA_PERSONA_Id_persona` INT NOT NULL,

`INSUMO_Id_insumo` INT NOT NULL,

`INSUMO_PROVEEDOR_Id_proveedor` VARCHAR(45) NOT NULL,

`RUTA_Id_ruta` INT NOT NULL,

PRIMARY KEY (`Id_embarcacion`, `MOTORISTA_Id_motorista`,


`MOTORISTA_PERSONA_Id_persona`, `INSUMO_Id_insumo`,
`INSUMO_PROVEEDOR_Id_proveedor`, `RUTA_Id_ruta`),

INDEX `fk_EMBARCACION_MOTORISTA1_idx` (`MOTORISTA_Id_motorista` ASC,


`MOTORISTA_PERSONA_Id_persona` ASC),

INDEX `fk_EMBARCACION_INSUMO1_idx` (`INSUMO_Id_insumo` ASC,


`INSUMO_PROVEEDOR_Id_proveedor` ASC),

INDEX `fk_EMBARCACION_RUTA1_idx` (`RUTA_Id_ruta` ASC),

CONSTRAINT `fk_EMBARCACION_MOTORISTA1`

FOREIGN KEY (`MOTORISTA_Id_motorista` , `MOTORISTA_PERSONA_Id_persona`)

REFERENCES `ASOFLUTOTA`.`MOTORISTA` (`Id_motorista` , `PERSONA_Id_persona`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_EMBARCACION_INSUMO1`

FOREIGN KEY (`INSUMO_Id_insumo` , `INSUMO_PROVEEDOR_Id_proveedor`)

REFERENCES `ASOFLUTOTA`.`INSUMO` (`Id_insumo` , `PROVEEDOR_Id_proveedor`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_EMBARCACION_RUTA1`

FOREIGN KEY (`RUTA_Id_ruta`)

REFERENCES `ASOFLUTOTA`.`RUTA` (`Id_ruta`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------
-- Table `ASOFLUTOTA`.`EPP`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`EPP` (

`Cantidad` INT NOT NULL,

`Descripcion` VARCHAR(45) NOT NULL,

`Id_Producto` VARCHAR(45) NOT NULL,

PRIMARY KEY (`Id_Producto`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`INVENTARIO`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`INVENTARIO` (

`Id_inventario` INT NOT NULL,

`fecha` VARCHAR(45) NOT NULL,

`Cant._inicial` VARCHAR(45) NOT NULL,

`Cant._final` VARCHAR(45) NOT NULL,

`INSUMO_Id_insumo` INT NOT NULL,

`PERSONA_Id_persona` INT NOT NULL,

PRIMARY KEY (`Id_inventario`, `INSUMO_Id_insumo`, `PERSONA_Id_persona`),

INDEX `fk_INVENTARIO_INSUMO1_idx` (`INSUMO_Id_insumo` ASC),

INDEX `fk_INVENTARIO_PERSONA1_idx` (`PERSONA_Id_persona` ASC),

CONSTRAINT `fk_INVENTARIO_INSUMO1`

FOREIGN KEY (`INSUMO_Id_insumo`)

REFERENCES `ASOFLUTOTA`.`INSUMO` (`Id_insumo`)

ON DELETE NO ACTION

ON UPDATE NO ACTION,

CONSTRAINT `fk_INVENTARIO_PERSONA1`

FOREIGN KEY (`PERSONA_Id_persona`)

REFERENCES `ASOFLUTOTA`.`PERSONA` (`Id_persona`)


ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`ROL`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`ROL` (

`Id_rol` INT NOT NULL,

`Nombre_rol` VARCHAR(45) NOT NULL,

`PERSONA_Id_persona` INT NOT NULL,

`PERSONA_TIPO DE DOCUMENTO_Id_tipo_de_documento` INT NOT NULL,

`PERSONA_CIUDAD_Id_ciudad` INT NOT NULL,

PRIMARY KEY (`Id_rol`, `PERSONA_Id_persona`, `PERSONA_TIPO DE


DOCUMENTO_Id_tipo_de_documento`, `PERSONA_CIUDAD_Id_ciudad`),

INDEX `fk_ROL_PERSONA1_idx` (`PERSONA_Id_persona` ASC, `PERSONA_TIPO DE


DOCUMENTO_Id_tipo_de_documento` ASC, `PERSONA_CIUDAD_Id_ciudad` ASC),

CONSTRAINT `fk_ROL_PERSONA1`

FOREIGN KEY (`PERSONA_Id_persona` , `PERSONA_TIPO DE


DOCUMENTO_Id_tipo_de_documento` , `PERSONA_CIUDAD_Id_ciudad`)

REFERENCES `ASOFLUTOTA`.`PERSONA` (`Id_persona` , `TIPO DE


DOCUMENTO_Id_tipo_de_documento` , `CIUDAD_Id_ciudad`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `ASOFLUTOTA`.`USUARIO`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `ASOFLUTOTA`.`USUARIO` (


`Id_usuario` INT NOT NULL,

`Password` VARCHAR(45) NOT NULL,

`ROL_Id_rol` INT NOT NULL,

PRIMARY KEY (`Id_usuario`, `ROL_Id_rol`),

INDEX `fk_USUARIO_ROL1_idx` (`ROL_Id_rol` ASC),

CONSTRAINT `fk_USUARIO_ROL1`

FOREIGN KEY (`ROL_Id_rol`)

REFERENCES `ASOFLUTOTA`.`ROL` (`Id_rol`)

ON DELETE NO ACTION

ON UPDATE NO ACTION)

ENGINE = InnoDB;

SET SQL_MODE=@OLD_SQL_MODE;

SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;

SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

Potrebbero piacerti anche