5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
1/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 1 - Profesor: ING. IVAN IMAN AGURTO
ESTRUCTURA DE TABLAS
Luego de analizar las funcionalidades solicitadas por la agencia VolansViajes SAC.
Se ha identificado las siguientes tablas.
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
2/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 2 - Profesor: ING. IVAN IMAN AGURTO
1.TABLA TIPO_DOC_IDENTIDAD
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`TIPO_DOC_IDENTIDAD`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`TIPO_DOC_IDENTIDAD` (
`idTIPO_DOC_IDENTIDAD` INT NOT NULL ,
`descripcion` VARCHAR(45) NOT NULL ,
PRIMARY KEY (`idTIPO_DOC_IDENTIDAD`) )
ENGINE = InnoDB;
2.TABLA TIPO_PROVEEDOR
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`TIPO_PROVEEDOR`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`TIPO_PROVEEDOR` (
`idTIPO_PROVEEDOR` INT NOT NULL ,
`descripcion` VARCHAR(45) NULL ,
PRIMARY KEY (`idTIPO_PROVEEDOR`) )
ENGINE = InnoDB;
3.TABLA PROVEEDOR
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PROVEEDOR`
-- -----------------------------------------------------
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
3/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 3 - Profesor: ING. IVAN IMAN AGURTO
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PROVEEDOR` (
`idPROVEEDOR` INT NOT NULL ,
`idTIPO_DOC_IDENTIDAD` INT NOT NULL ,
`num_doc` VARCHAR(15) NOT NULL ,
`idTIPO_PROVEEDOR` INT NOT NULL ,
`nombre_rnz_social` VARCHAR(45) NULL ,
`nombre_comercial` VARCHAR(45) NULL ,
`Fecha_constitucion` DATE NULL ,
`persona_contacto` VARCHAR(45) NULL ,
`observaciones` TEXT NULL ,
PRIMARY KEY (`idPROVEEDOR`) ,
INDEX `proveedor_06_idx` (`idTIPO_DOC_IDENTIDAD` ASC) ,
INDEX `proveedor_07_idx` (`idTIPO_PROVEEDOR` ASC) ,
CONSTRAINT `proveedor_06`
FOREIGN KEY (`idTIPO_DOC_IDENTIDAD` )
REFERENCES `VOLANSVIAJES`.`TIPO_DOC_IDENTIDAD` (`idTIPO_DOC_IDENTIDAD` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `proveedor_07`
FOREIGN KEY (`idTIPO_PROVEEDOR` )
REFERENCES `VOLANSVIAJES`.`TIPO_PROVEEDOR` (`idTIPO_PROVEEDOR` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB
COMMENT = 'Tabla de Proveedors de Servicios Turisticos';
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
4/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 4 - Profesor: ING. IVAN IMAN AGURTO
4.TABLA TIPO_VIA
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`TIPO_VIA`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`TIPO_VIA` (
`idTIPO_VIA` INT NOT NULL ,
`descripcion` VARCHAR(45) NOT NULL ,
PRIMARY KEY (`idTIPO_VIA`) )
ENGINE = InnoDB;
5.TABLA PAIS
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PAIS`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PAIS` (
`idPAIS` INT NOT NULL ,
`descripcion` VARCHAR(45) NULL ,
PRIMARY KEY (`idPAIS`) )
ENGINE = InnoDB;
6.TABLA DEPARTAMENTO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`DEPARTAMENTO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`DEPARTAMENTO` (
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
5/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 5 - Profesor: ING. IVAN IMAN AGURTO
`idDEPARTAMENTO` INT NOT NULL ,
`descripcion` VARCHAR(45) NOT NULL ,
`idPAIS` INT NOT NULL ,
PRIMARY KEY (`idDEPARTAMENTO`) ,
INDEX `pais_01_idx` (`idPAIS` ASC) ,
CONSTRAINT `pais_01`
FOREIGN KEY (`idPAIS` )
REFERENCES `VOLANSVIAJES`.`PAIS` (`idPAIS` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
7.TABLA DIRECCION
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`DIRECCION`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`DIRECCION` (
`idDIRECCION` INT NOT NULL ,
`idTIPO_VIA` INT NOT NULL ,
`direccion` VARCHAR(50) NULL ,
`numero` VARCHAR(6) NULL ,
`interios_dpto` VARCHAR(6) NULL ,
`manzana` VARCHAR(10) NULL ,
`sector` VARCHAR(15) NULL ,
`lote` VARCHAR(15) NULL ,
`urbanizacion` VARCHAR(25) NULL ,
`idPAIS` INT NULL ,
`idDEPARTAMENTO` INT NULL ,
`idPROVINCIA` INT NULL ,
`idDISTRITO` INT NULL ,
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
6/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 6 - Profesor: ING. IVAN IMAN AGURTO
`codigo_postal` VARCHAR(5) NULL ,
PRIMARY KEY (`idDIRECCION`) ,
INDEX `tip_via_idx` (`idTIPO_VIA` ASC) ,
INDEX `pais_idx` (`idPAIS` ASC) ,
INDEX `departamento_idx` (`idDEPARTAMENTO` ASC) ,
INDEX `provincia_idx` (`idPROVINCIA`) ,
CONSTRAINT `tipo_via`
FOREIGN KEY (`idTIPO_VIA` )
REFERENCES `VOLANSVIAJES`.`TIPO_VIA` (`idTIPO_VIA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `pais`
FOREIGN KEY (`idPAIS` )
REFERENCES `VOLANSVIAJES`.`PAIS` (`idPAIS` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `departamento`
FOREIGN KEY (`idDEPARTAMENTO` )
REFERENCES `VOLANSVIAJES`.`DEPARTAMENTO` (`idDEPARTAMENTO` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
8.TABLA TELEFONO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`TELEFONO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`TELEFONO` (
`idTELEFONO` INT NOT NULL ,
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
7/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 7 - Profesor: ING. IVAN IMAN AGURTO
`tel_pais` DECIMAL(10,0) NULL ,
`tel_ciudad` DECIMAL(10,0) NULL ,
`tel_numerio` DECIMAL(10,0) NULL ,
`tel_anexo` DECIMAL(10,0) NULL ,
PRIMARY KEY (`idTELEFONO`) )
ENGINE = InnoDB;
9.TABLA CORREO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`CORREO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`CORREO` (
`idCORREO` INT NOT NULL ,
`direccion` VARCHAR(45) NULL ,
`ind_envia_automatico` CHAR(1) NULL ,
PRIMARY KEY (`idCORREO`) )
ENGINE = InnoDB;
10. TABLA PRODUCTO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PRODUCTO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PRODUCTO` (
`idPRODUCTO` INT NOT NULL ,
`nombre` VARCHAR(45) NULL COMMENT 'Nombre Corto' ,
`descripcion` MEDIUMTEXT NULL ,
`tipo_producto` VARCHAR(2) NULL COMMENT 'Validar contra tabla de tipo' ,
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
8/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 8 - Profesor: ING. IVAN IMAN AGURTO
`idPROVEEDOR` INT NOT NULL ,
`fecha_ini_vigencia` DATE NULL ,
`fecha_fin_vigencia` DATE NULL ,
`precio_compra` DECIMAL(15,2) NULL ,
`porcentaje_comision` DECIMAL(3,2) NULL ,
`monto_comision` DECIMAL(15,2) NULL COMMENT 'Comision ganada por la venta' ,
`porcentaje_impuesto` DECIMAL(3,2) NULL ,
`monto_impuesto` DECIMAL(15,2) NULL ,
`monto_incentivo` DECIMAL(15,2) NULL ,
`precio_venta` DECIMAL(15,2) NULL ,
`monto_fee` DECIMAL(15,2) NULL COMMENT 'Monto cobrado por los servicios prestados' ,
`porcentaje_max_dcto` DECIMAL(3,2) NULL ,
`ind_fotos` CHAR(1) NULL ,
`idPAIS` INT NOT NULL COMMENT 'pais donde se ejecutara el producto' ,
PRIMARY KEY (`idPRODUCTO`) ,
INDEX `producto_04_idx` (`idPAIS` ASC) ,
CONSTRAINT `producto_04`
FOREIGN KEY (`idPAIS` )
REFERENCES `VOLANSVIAJES`.`PAIS` (`idPAIS` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
11. TABLA CLIENTE
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`CLIENTE`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`CLIENTE` (
`idCLIENTE` INT NOT NULL ,
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
9/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 9 - Profesor: ING. IVAN IMAN AGURTO
`tipo_persona` CHAR(1) NULL COMMENT 'N : Natural\\nJ: Juridica' ,
`tipo_documento` VARCHAR(3) NULL ,
`numero_documento` VARCHAR(15) NULL ,
`apellido_paterno` VARCHAR(45) NULL ,
`nombres` VARCHAR(45) NULL ,
`razon socal` VARCHAR(45) NULL ,
`fecha_nacimiento_constitucion` DATE NULL ,
`persona_contacto` VARCHAR(45) NULL COMMENT 'solo para personas jutdicas' ,
`pagina_web` VARCHAR(45) NULL ,
`observaciones` TEXT NULL ,
PRIMARY KEY (`idCLIENTE`) )
ENGINE = InnoDB;
12. TABLA DOCUMENTO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`DOCUMENTO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`DOCUMENTO` (
`idDOCUMENTO` INT NOT NULL ,
`tipo_documento` CHAR(1) NULL COMMENT '1.Proforma 2.Itinerarios 3.Voucher a proveedores
4.Documentos de Cobranza 4.Boletas de Venta 6.Facturas 7.Recibos 8.Notas de Crdito 9.Cartas de
Bienvenida 0.Cartas de Agradecimiento.' ,
`Fecha_emision` DATE NULL ,
`fecha_ultima_impresion` DATE NULL ,
`fecha_cobro` DATE NULL ,
`numero_documento` VARCHAR(25) NULL ,
`concepto_descripcion` TEXT NULL ,
`tipo_impresion` CHAR(1) NULL COMMENT '1:pre_impreso 2:plantilla' ,
`ID_plantilla` CHAR(25) NOT NULL COMMENT 'indicador de plantilla' ,
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
10/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 10 - Profesor: ING. IVAN IMAN AGURTO
PRIMARY KEY (`idDOCUMENTO`) )
ENGINE = InnoDB;
13. TABLA PAGO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PAGO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS VOLANSVIAJES`.`PAGO` (
`idPAGO` INT NOT NULL ,
`fecha_pago` DATE NULL ,
`moneda` CHAR(1) NULL COMMENT '1:soles 2:dolares' ,
`monto_pagado` DECIMAL(15,2) NULL ,
`numero_medio_pago` VARCHAR(25) NULL COMMENT 'Si es tarjeta, ingresar el nmero, si es
Trasferencia ingresar el identificador de movimiento, Si es cheque ingresar el nmero, El nmero de la
Nota de Crdito' ,
`titular_medio_pago` VARCHAR(45) NULL COMMENT 'Nombre que figura en la tarjeta' ,
`entidad_medio_pago` VARCHAR(45) NULL COMMENT 'Nombre del Banco o entidad financiera
del medio de pago' ,
`estado_pago` CHAR(1) NULL COMMENT '1:activo, 2:anulado' ,
`idFORMA_PAGO` CHAR(1) NULL COMMENT '1.Contado 2.Transferencia Bancaria 3.Tarjeta de
Crdito 4.Tarjeta de Debito 5.Cheque 6.Nota de Crdito.' ,
PRIMARY KEY (`idPAGO`) )
ENGINE = InnoDB
COMMENT = 'Registro de Pagos';
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
11/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 11 - Profesor: ING. IVAN IMAN AGURTO
14. TABLA RESERVA
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA` (
`idRESERVA` INT NOT NULL ,
`idPAIS` INT NULL COMMENT 'pais origen' ,
`num_pasajero_adulto` INT NULL ,
`num_pasajero_nino` INT NULL ,
`fecha_creacion` VARCHAR(45) NULL ,
`fecha_ulrima_modificacion` VARCHAR(45) NULL ,
`fecha_maxima_modificacion` VARCHAR(45) NULL ,
`fecha_inicio_ejecucion` INT NULL ,
`fecha_fin_ejecucion` VARCHAR(45) NULL ,
`fecha_maxima_anulacion` VARCHAR(45) NULL ,
`restricciones` TEXT NULL ,
`observaciones_viaje` TEXT NULL ,
PRIMARY KEY (`idRESERVA`) ,
INDEX `reserva_01_idx` (`idPAIS` ASC) ,
CONSTRAINT `reserva_01`
FOREIGN KEY (`idPAIS` )
REFERENCES `VOLANSVIAJES`.`PAIS` (`idPAIS` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
12/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 12 - Profesor: ING. IVAN IMAN AGURTO
15. TABLA RESERVA_HOTEL
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_HOTEL`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS VOLANSVIAJES`.`RESERVA_HOTEL` (
`idRESERVA_HOTEL` INT NOT NULL ,
`idRESERVA` INT NOT NULL ,
`hotel` VARCHAR(45) NULL ,
`pais` VARCHAR(45) NULL ,
`ciudad` VARCHAR(45) NULL ,
`cod_reserva_hotel` VARCHAR(25) NULL ,
`tipo_habitacion` VARCHAR(45) NULL ,
`num_habitaciones` INT NULL ,
`num_noches` INT NULL ,
`check_in` DATETIME NULL ,
`chcek_out` DATETIME NULL ,
`tafia_noche` DECIMAL(15,2) NULL ,
`tax_noche` DECIMAL(15,2) NULL ,
`contacto_reserva` VARCHAR(45) NULL ,
PRIMARY KEY (`idRESERVA_HOTEL`, `idRESERVA`) ,
INDEX `reserva_02_idx` (`idRESERVA` ASC) ,
CONSTRAINT `reserva_02`
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
13/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 13 - Profesor: ING. IVAN IMAN AGURTO
16. TABLA RESERVA_VUELOS
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_VUELOS`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA_VUELOS` (
`idRESERVA_VUELOS` INT NOT NULL ,
`idRESERVA` INT NOT NULL ,
`linea` VARCHAR(45) NULL ,
`cod_reserva_vuelo` VARCHAR(25) NULL ,
`fecha_vuelo` DATE NULL ,
`hora_vuelo` VARCHAR(45) NULL ,
`ciudad_inicio` VARCHAR(45) NULL ,
`num_escalas` VARCHAR(45) NULL ,
`ciudad_destino` VARCHAR(45) NULL ,
`IdCLIENTE` INT NULL ,
`ind_adulto_nino` CHAR(1) NULL ,
`edad` INT NULL ,
`contacto_emergemcia` VARCHAR(45) NULL ,
`clase_vuelo` VARCHAR(1) NULL ,
`monto_vuelo` DECIMAL(15,2) NULL ,
`monto_fee` VARCHAR(45) NULL ,
PRIMARY KEY (`idRESERVA_VUELOS`, `idRESERVA`) ,
INDEX `reserva_04_idx` (`idRESERVA` ASC) ,
CONSTRAINT `reserva_04`
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
14/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 14 - Profesor: ING. IVAN IMAN AGURTO
17. TABLA TIPO_TELEFONO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`TIPO_TELEFONO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`TIPO_TELEFONO` (
`idTIPO_TELEFONO` INT NOT NULL ,
`Descripcion` VARCHAR(45) NULL ,
PRIMARY KEY (`idTIPO_TELEFONO`) )
ENGINE = InnoDB;
18. TABLA PROVEEDOR_TELEFONO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PROVEEDOR_TELEFONO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PROVEEDOR_TELEFONO` (
`idPROVEEDOR` INT NOT NULL ,
`idTIPO_TELEFONO` INT NOT NULL ,
`idTELEFONO` INT NOT NULL ,
PRIMARY KEY (`idPROVEEDOR`, `idTIPO_TELEFONO`, `idTELEFONO`) ,
INDEX `PROV_01_idx` (`idPROVEEDOR` ASC) ,
INDEX `TELEFONO_01_idx` (`idTELEFONO` ASC) ,
INDEX `TIPO_TELEFONO_idx` (`idTIPO_TELEFONO` ASC) ,
CONSTRAINT `PROV_01`
FOREIGN KEY (`idPROVEEDOR` )
REFERENCES `VOLANSVIAJES`.`PROVEEDOR` (`idPROVEEDOR` )
ON DELETE NO ACTION
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
15/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 15 - Profesor: ING. IVAN IMAN AGURTO
ON UPDATE RESTRICT,
CONSTRAINT `TELEFONO_01`
FOREIGN KEY (`idTELEFONO` )
REFERENCES `VOLANSVIAJES`.`TELEFONO` (`idTELEFONO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `TIPO_TELEFONO`
FOREIGN KEY (`idTIPO_TELEFONO` )
REFERENCES `VOLANSVIAJES`.`TIPO_TELEFONO` (`idTIPO_TELEFONO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
19. TABLA TIPO_DIRECCION
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`TIPO_DIRECCION`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`TIPO_DIRECCION` (
`idTIPO_DIRECCION` INT NOT NULL ,
`descripcion` VARCHAR(45) NOT NULL ,
PRIMARY KEY (`idTIPO_DIRECCION`) )
ENGINE = InnoDB;
20. TABLA PROVEEDOR_DIRECCION
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PROVEEDOR_DIRECCION`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PROVEEDOR_DIRECCION` (
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
16/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 16 - Profesor: ING. IVAN IMAN AGURTO
`idPROVEEDOR` INT NOT NULL ,
`idTIPO_DIRECCION` INT NOT NULL ,
`idDIRECCION` INT NOT NULL ,
PRIMARY KEY (`idPROVEEDOR`, `idDIRECCION`, `idTIPO_DIRECCION`) ,
INDEX `proveedor_01_idx` (`idPROVEEDOR` ASC) ,
INDEX `proveedor_02_idx` (`idTIPO_DIRECCION` ASC) ,
INDEX `proveedor_03_idx` (`idDIRECCION` ASC) ,
CONSTRAINT `proveedor_01`
FOREIGN KEY (`idPROVEEDOR` )
REFERENCES `VOLANSVIAJES`.`PROVEEDOR` (`idPROVEEDOR` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `proveedor_02`
FOREIGN KEY (`idTIPO_DIRECCION` )
REFERENCES `VOLANSVIAJES`.`TIPO_DIRECCION` (`idTIPO_DIRECCION` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `proveedor_03`
FOREIGN KEY (`idDIRECCION` )
REFERENCES `VOLANSVIAJES`.`DIRECCION` (`idDIRECCION` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
21. TABLA PROVEEDOR_CORREO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PROVEEDOR_CORREO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PROVEEDOR_CORREO` (
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
17/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 17 - Profesor: ING. IVAN IMAN AGURTO
`idPROVEEDOR` INT NOT NULL ,
`idCORREO` INT NOT NULL ,
PRIMARY KEY (`idPROVEEDOR`, `idCORREO`) ,
INDEX `proveedor_04_idx` (`idPROVEEDOR` ASC) ,
INDEX `proveedor_05_idx` (`idCORREO` ASC) ,
CONSTRAINT `proveedor_04`
FOREIGN KEY (`idPROVEEDOR` )
REFERENCES `VOLANSVIAJES`.`PROVEEDOR` (`idPROVEEDOR` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `proveedor_05`
FOREIGN KEY (`idCORREO` )
REFERENCES `VOLANSVIAJES`.`CORREO` (`idCORREO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
22. TABLA PROVINCIA
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PROVINCIA`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PROVINCIA` (
`idPROVINCIA` INT NOT NULL ,
`descripcion` VARCHAR(45) NOT NULL ,
`idDEPARTAMENTO` INT NOT NULL ,
PRIMARY KEY (`idPROVINCIA`) ,
INDEX `departamente_01_idx` (`idDEPARTAMENTO` ASC) ,
CONSTRAINT `departamente_01`
FOREIGN KEY (`idDEPARTAMENTO` )
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
18/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 18 - Profesor: ING. IVAN IMAN AGURTO
REFERENCES `VOLANSVIAJES`.`DEPARTAMENTO` (`idDEPARTAMENTO` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
23. TABLA DISTRITO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`DISTRITO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`DISTRITO` (
`idDISTRITO` INT NOT NULL ,
`descripcion` VARCHAR(45) NOT NULL ,
`idPROVINCIA` INT NOT NULL ,
PRIMARY KEY (`idDISTRITO`) ,
INDEX `provincia_01_idx` (`idPROVINCIA` ASC) ,
CONSTRAINT `provincia_01`
FOREIGN KEY (`idPROVINCIA` )
REFERENCES `VOLANSVIAJES`.`PROVINCIA` (`idPROVINCIA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
24. TABLA CLIENTE_DIRECCION
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`CLIENTE_DIRECCION`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`CLIENTE_DIRECCION` (
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
19/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 19 - Profesor: ING. IVAN IMAN AGURTO
`idCLIENTE` INT NOT NULL ,
`idTIPO_DIRECCION` INT NULL ,
`idDIRECCION` INT NULL ,
PRIMARY KEY (`idCLIENTE`) ,
INDEX `cliente_01_idx` (`idCLIENTE` ASC) ,
INDEX `cliente_02_idx` (`idTIPO_DIRECCION` ASC) ,
INDEX `cliente_03_idx` (`idDIRECCION` ASC) ,
CONSTRAINT `cliente_01`
FOREIGN KEY (`idCLIENTE` )
REFERENCES `VOLANSVIAJES`.`CLIENTE` (`idCLIENTE` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `cliente_02`
FOREIGN KEY (`idTIPO_DIRECCION` )
REFERENCES `VOLANSVIAJES`.`TIPO_DIRECCION` (`idTIPO_DIRECCION` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `cliente_03`
FOREIGN KEY (`idDIRECCION` )
REFERENCES `VOLANSVIAJES`.`DIRECCION` (`idDIRECCION` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
25. TABLA CLIENTE_TELEFONO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`CLIENTE_TELEFONO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`CLIENTE_TELEFONO` (
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
20/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 20 - Profesor: ING. IVAN IMAN AGURTO
`idCLIENTE` INT NOT NULL ,
`idTIPO_TELEFONO` INT NOT NULL ,
`idTELEFONO` INT NOT NULL ,
PRIMARY KEY (`idCLIENTE`, `idTELEFONO`, `idTIPO_TELEFONO`) ,
INDEX `cliente_04_idx` (`idCLIENTE` ASC) ,
INDEX `cliente_05_idx` (`idTIPO_TELEFONO` ASC) ,
INDEX `cliente_06_idx` (`idTELEFONO` ASC) ,
CONSTRAINT `cliente_04`
FOREIGN KEY (`idCLIENTE` )
REFERENCES `VOLANSVIAJES`.`CLIENTE` (`idCLIENTE` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `cliente_05`
FOREIGN KEY (`idTIPO_TELEFONO` )
REFERENCES `VOLANSVIAJES`.`TIPO_TELEFONO` (`idTIPO_TELEFONO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `cliente_06`
FOREIGN KEY (`idTELEFONO` )
REFERENCES `VOLANSVIAJES`.`TELEFONO` (`idTELEFONO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
26. TABLA CLIENTE_CORREO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`CLIENTE_CORREO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`CLIENTE_CORREO` (
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
21/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 21 - Profesor: ING. IVAN IMAN AGURTO
`idCLIENTE` INT NOT NULL ,
`idCORREO` INT NOT NULL ,
PRIMARY KEY (`idCLIENTE`, `idCORREO`) ,
INDEX `cliente_09_idx` (`idCLIENTE` ASC) ,
INDEX `cliente_10_idx` (`idCORREO` ASC) ,
CONSTRAINT `cliente_09`
FOREIGN KEY (`idCLIENTE` )
REFERENCES `VOLANSVIAJES`.`CLIENTE` (`idCLIENTE` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `cliente_10`
FOREIGN KEY (`idCORREO` )
REFERENCES `VOLANSVIAJES`.`CORREO` (`idCORREO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
27. TABLA PRODUCTO_FOTO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`PRODUCTO_FOTO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`PRODUCTO_FOTO` (
`idPRODUCTO_FOTO` INT NOT NULL ,
`idPRODUCTO` INT NOT NULL ,
`descripcion` VARCHAR(200) NULL ,
`FOTO` LONGBLOB NOT NULL ,
PRIMARY KEY (`idPRODUCTO_FOTO`,`idPRODUCTO`) ,
INDEX `procuto_01_idx` (`idPRODUCTO` ASC) ,
CONSTRAINT `procuto_01`
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
22/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 22 - Profesor: ING. IVAN IMAN AGURTO
FOREIGN KEY (`idPRODUCTO` )
REFERENCES `VOLANSVIAJES`.`PRODUCTO` (`idPRODUCTO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
28. TABLA RESERVA_PRODUCTO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_PRODUCTO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA_PRODUCTO` (
`idRESERVA` INT NOT NULL ,
`idPRODUCTO` INT NOT NULL ,
PRIMARY KEY (`idRESERVA`, `idPRODUCTO`) ,
INDEX `reserva_09_idx` (`idRESERVA` ASC) ,
INDEX `reserva_10_idx` (`idPRODUCTO` ASC) ,
CONSTRAINT `reserva_09`
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `reserva_10`
FOREIGN KEY (`idPRODUCTO` )
REFERENCES `VOLANSVIAJES`.`PRODUCTO` (`idPRODUCTO` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
23/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 23 - Profesor: ING. IVAN IMAN AGURTO
29. TABLA RESERVA_CONTRATANTE
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_CONTRATANTE`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA_CONTRATANTE` (
`idRESERVA` INT NOT NULL ,
`idCLIENTE` INT NOT NULL ,
PRIMARY KEY (`idRESERVA`) ,
INDEX `reserva_12_idx` (`idRESERVA` ASC) ,
INDEX `reserva_13_idx` (`idCLIENTE` ASC) ,
CONSTRAINT `reserva_12`
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `reserva_13`
FOREIGN KEY (`idCLIENTE` )
REFERENCES `VOLANSVIAJES`.`CLIENTE` (`idCLIENTE` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
30. TABLA RESERVA_PASAJERO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_PASAJERO`
-- -----------------------------------------------------
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
24/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 24 - Profesor: ING. IVAN IMAN AGURTO
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA_PASAJERO` (
`idRESERVA` INT NOT NULL ,
`idCLIENTE` INT NOT NULL ,
PRIMARY KEY (`idRESERVA`, `idCLIENTE`) ,
INDEX `reserva_14_idx` (`idRESERVA` ASC) ,
INDEX `reserva_15_idx` (`idCLIENTE` ASC) ,
CONSTRAINT `reserva_14`
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `reserva_15`
FOREIGN KEY (`idCLIENTE` )
REFERENCES `VOLANSVIAJES`.`CLIENTE` (`idCLIENTE` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
31. TABLA RESERVA_DOCUMENTO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_DOCUMENTO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA_DOCUMENTO` (
`idRESERVA` INT NOT NULL ,
`idDOCUMENTO` INT NOT NULL ,
PRIMARY KEY (`idRESERVA`, `idDOCUMENTO`) ,
INDEX `reserva_19_idx` (`idRESERVA` ASC) ,
INDEX `reserva_20_idx` (`idDOCUMENTO` ASC) ,
CONSTRAINT `reserva_19`
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
25/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 25 - Profesor: ING. IVAN IMAN AGURTO
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE RESTRICT,
CONSTRAINT `reserva_20`
FOREIGN KEY (`idDOCUMENTO` )
REFERENCES `VOLANSVIAJES`.`DOCUMENTO` (`idDOCUMENTO` )
ON DELETE NO ACTION
ON UPDATE RESTRICT)
ENGINE = InnoDB;
32. TABLA RESERVA_PAGO
-- -----------------------------------------------------
-- Table `VOLANSVIAJES`.`RESERVA_PAGO`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `VOLANSVIAJES`.`RESERVA_PAGO` (
`idRESERVA` INT NOT NULL ,
`idPAGO` INT NOT NULL ,
PRIMARY KEY (`idRESERVA`, `idPAGO`) ,
INDEX `reserva_21_idx` (`idRESERVA` ASC) ,
INDEX `reserva_22_idx` (`idPAGO` ASC) ,
CONSTRAINT `reserva_21`
FOREIGN KEY (`idRESERVA` )
REFERENCES `VOLANSVIAJES`.`RESERVA` (`idRESERVA` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `reserva_22`
FOREIGN KEY (`idPAGO` )
REFERENCES `VOLANSVIAJES`.`PAGO` (`idPAGO` )
5/25/2018 Proyecto Base de Datos-Estructuras de Las Tablas-JV
26/26
PROYECTO BASE DE DATOS INGENIERIA DE SISTEMAS
Alumno: JOSE VILLANUEVA GRADOS - 26 - Profesor: ING. IVAN IMAN AGURTO
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
Top Related