Está en la página 1de 33

UNIVERSIDAD TECNOLGICA DE TECMAC

Tecnol ogas de la Informaci n y Comuni cacin


rea: Sistemas Informti cos

Creaci n de proyecto
AGENCIA DE VIAJES

ALUMNOS:
Antonio Ricardo Ocampo Mora
Giovanni Prez Bernal
Leonardo Hernndez Oaxaca
Edwi n Morgado Quijada

2

INDICE
Conteni do
Objetivos Generales ................................................................................................ 3
Objetivos Especficos .............................................................................................. 3
Marco Terico ......................................................................................................... 4
J ava ..................................................................................................................... 4
WampServer ........................................................................................................ 4
NetBeans ............................................................................................................. 4
J DBC (J ava Database Connectivity) .................................................................... 5
Nombre del Sistema ................................................................................................ 5
Beneficios ................................................................................................................ 5
Requerimientos Funcionales aplicaciones de escritorio .......................................... 5
Requerimientos no funcionales ............................................................................... 6
Requerimientos Funcionales aplicacin web ........................................................... 6
Requerimientos no funcionales ............................................................................... 6
Contextualizacin del sistema ................................................................................. 6
Casos de uso .......................................................................................................... 7
Detalle de caso de uso Hoteles ........................................................................... 7
Detalle de caso de uso Aerolneas ...................................................................... 8
Detalle de caso de uso Registro de Descuento ................................................. 10
Detalle de caso de uso Cancelacin .................................................................. 11
Detalle de Caso de uso Alta Cliente. ................................................................. 11
Base de Datos ....................................................................................................... 13
Consultas ........................................................................................................... 13
Subconsultas ..................................................................................................... 15
Trigger ............................................................................................................... 19
procedimientos con disparadores ...................................................................... 21
Indices ............................................................................................................... 25

3

Introduccin
Viajes Emporio, es una empresa ubicada en la Ciudad de Mxico, dedicada a la
venta y reservacin de vuelos, hoteles y transporte con el mejor precio
garantizado.
La empresa se constituye a partir de la idea de Roberto Snchez de crear una
agencia de viajes, un mercado que en los ltimos aos ha comenzado a tomar
presencia en Mxico.
La empresa Viajes Emporio busca seguir creciendo a nivel nacional por lo que
manejar una misma informacin en diferentes sucursales es tedioso y complicado
utilizar diferentes sistemas para cada sucursal.

Obj eti vos General es
Desarrollar un sistema de gestin de informacin para un mayor rendimiento de
cada una de las sucursales de la agencia de viajes.
En un plazo de 7 semanas

Obj eti vos Especficos
-Analizar los requerimientos establecidos por el cliente y ofrecer las mejores
propuestas que satisfagan en su totalidad las funciones y procesos de la agencia.
-Proporcionar a los usuarios diferentes maneras de poder adquirir los servicios de
la agencia.
-Que el usuario al acezar a la pgina web se sienta en tal confianza como si
estuviera tratando con cualquiera de los expertos agentes de viaje que dispone la
sucursal.
-Ofrecer al administrador una interfaz sencilla pero a la vez completa para el
manejo de su informacin.
-Mantener la integridad total de la informacin asi como la seguridad de la misma,
desarrollando un cdigo estable que no contenga errores y este asegurado con
validaciones en donde sea requerido o necesario.
4

Marco Terico
Para el desarrollo de nuestro programa creamos una aplicacin de escritorio,
creamos una base de datos y una pagina web esto fue posible utilizando los
siguientes programas y lenguajes:
Java
Es un lenguaje de programacin y la primera plataforma informtica creada por
Sun Microsystems en 1995. Es la tecnologa subyacente que permite el uso de
programas punteros, como herramientas, juegos y aplicaciones de negocios, java
se ejecuta en ms de 850 millones de ordenadores personales en todo el mundo.
WampServer
WampServer es la nica solucin que te permitir tener tu propio servidor de
produccin. Una vez WampServer est instalado, usted tiene la posibilidad de
aadir el mayor nmero de Apache, MySQL y PHP como las emisiones que
desee.
WampServer tiene funcionalidades que lo hacen muy completo y fcil de usar.
Con un click izquierdo sobre el icono de WampServer, sers capaz de:
Gestionar sus servicios de Apache y MySQL,
Cambiar de lnea / fuera de lnea (dar acceso a todos o slo local)
Instalar y cambiar de Apache, MySQL y PHP emisiones
Gestin de la configuracin de sus servidores
Acceder a sus registros
Acceder a sus archivos de configuracin
Crear alias
Con un clic derecho:
WampServer cambiar el idioma del men
Acceder a la pgina principal
NetBeans
Es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje
de programacin J ava. Existe adems un nmero importante de mdulos para
extenderlo. NetBeans IDE es un producto libre y gratuito sin restricciones de uso.
NetBeans es un proyecto de cdigo abierto de gran xito con una gran base de
usuarios, una comunidad en constante crecimiento, y con cerca de 100 socios en
todo el mundo. Sun MicroSystems fund el proyecto de cdigo abierto NetBeans
en junio de 2000 y contina siendo el patrocinador principal de los proyectos.
5

La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir
de un conjunto de componentes de software llamados mdulos. Un mdulo es un
archivo J ava que contiene clases de java escritas para interactuar con las APIs de
NetBeans y un archivo especial (manifest file) que lo identifica como mdulo. Las
aplicaciones construidas a partir de mdulos pueden ser extendidas agregndole
nuevos mdulos. Debido a que los mdulos pueden ser desarrollados
independientemente, las aplicaciones basadas en la plataforma NetBeans pueden
ser extendidas fcilmente por otros desarrolladores de software.
JDBC (Java Database Connecti vity)
Es un API (conjunto de clases y mtodos) que permite realizar operaciones
a una base de datos relacional, desde el lenguaje de programacin J ava.
Se trabaja con los paquetes java.sql y javax.sql
Paquete java.sql
J DBC ofrece el paquete java.sql, en el que existen clases muy tiles para trabajar
con bases de datos.
Nombre del Si stema
SIAgVi *a cambiar
Benefi ci os
Un solo sistema para diferentes sucursales
Soporte tcnico mnimo
Requerimi entos Funci onal es aplicaciones de escritori o
Altas, bajas cambios, modificaciones de aerolneas
Altas, bajas cambios, modificaciones de hoteles
Altas, bajas cambios, modificaciones de
Consultas de paquetes
Altas, bajas cambios, modificaciones de descuentos
Registro de ventas
Registro de reservaciones
6

Requerimi entos no funcionales
Un mejor diseo
Implementacin de pantallas por cada proceso
Multiplataforma
Requerimi entos Funci onal es aplicacin web
Registro de clientes
Consulta de vuelos
Consulta de hoteles
Consulta de paquetes
Registro de reservaciones
Registro de venta de paquetes
Requerimi entos no funcionales
Misma funcionalidad que ir a la sucursal
Diseo claro
Contextual izacin del si stema
Las funciones que desempea la agencia se refieren a la gestin y mediacin de
la reservacin, distribucin y venta de productos tursticos
Informar claramente al viajero sobre las caractersticas de los destinos con que
cuenta, para que pueda seleccionar del viaje mas adecuado de acuerdo a sus
necesidades.
Disear, organizar, vender y operar viajes tursticos combinando distintos servicios
a un precio global establecido.




7

Casos de uso
Detalle de caso de uso Hoteles
Cdigo: AV-001.1
Nombre: Registro de Hoteles
Actores: Usuario Administrador
Descripcin:
El usuario, por medio de un registro de entrada, ingresa las caractersticas
especificas de cada hotel que forme parte de la agencia de viajes, las cuales
consta de nombre, direccin, numero de pisos y habitaciones, telfono y los datos
generales del encargado del hotel, procurando solo un encargado por hotel.
El nmero de identificacin de cada hotel registrado se asignara de manera
automtica dentro de la base de datos.
Los datos que se manipulan dentro del formulario podr agregarse, eliminarse,
consultarse y modificarse, donde dicha informacin estar almacenada en la base
de datos.
Precondicin:
Que el usuario actual tenga los permisos de jerarqua mnimos requeridos para
poder manipular las altas, bajas y/o modificacin de los registros de los hoteles
disponibles y almacenados.
Flujo Principal:
Se registran los datos generales de cada hotel.
Por cada hotel que se registra se almacena:
Se registra el nombre del hotel.
Se registra el nmero de estrellas asignado al hotel.
Se registra la direccin completa del hotel.
Se registra el nmero de pisos con los que cuenta el hotel.
Se registra la cantidad de habitaciones de alquiler del hotel.
Se registra el telfono general del hotel.
Se registran los datos generales del encargado del hotel en cuestin.
Por cada encargado por hotel que se registra se almacena:
8

Se registra el nombre completo del encargado.
Se registra el nmero mvil del encargado.
Se registra un nmero telefnico alternativo del encargado.
Se registra el nmero de fax del encargado (en caso de contar con fax).
Excepciones:
Que los valores numricos solicitados sean asignados con letras o caracteres
especiales.
Postcondicin:
Se genera y registra un nuevo nmero de registro de hotel en la base de datos.
Comentarios:
Un solo registro de hotel podr contener un solo encargado de dicho hotel.
No podr haber nmeros telefnicos que se repitan en cada registro, tomando en
cuenta que los nmeros telefnicos son privados y exclusivos para cada hotel en
distintas ubicaciones.
Actualmente nicamente se estn registrando hoteles afiliados a la agencia de
viajes.

Detalle de caso de uso Aerolneas
Cdigo: AVD-1
Nombre: Registro de las Aerolneas
Actores: Usuario Administrador
Descripcin:
El usuario, por medio de un registro de entrada, ingresa las caractersticas
especficas de cada Aerolnea que forme parte de la agencia de viajes, las cuales
consta de nombre, direccin, telfono, telfono, alternativo y los datos generales
del encargado de la aerolnea.

El nmero de identificacin de cada aerolnea registrada se asignara de manera
automtica dentro de la base de datos.

9

Los datos que se manejan dentro del formulario podrn agregarse, eliminarse,
consultarse y modificarse.

Y donde esta informacin estar siendo almacenada en la base de datos.
Precondicin:
El usuario actual tendr que tener los permisos jerrquicos requeridos para poder
manejar las altas, bajas y/o modificacin de los registros de los aerolneas que
estn disponibles y almacenadas.
Flujo Principal:
Se registran los datos generales de cada aerolinea.
Por cada Aerolnea que se registre se almacena:
Se registra el nombre de la aerolnea.
Se registra la direccin completa la aerolnea.
Se registra la cantidad de aviones de vuelo de las aerolneas.
Se registra el telfono general la aerolnea.
Se registra el telfono alternativo de la aerolnea.
Se registran los datos generales del encargado de la aerolnea.
Por cada encargado por aerolnea que se registra se almacena:
Se registra el nombre completo del encargado.
Se registra el nmero celular del encargado.
Se registra un nmero telefnico alternativo del encargado.
Se registra el nmero de fax del encargado (en caso de contar con fax).
Excepciones:
Que los valores numricos sean asignados con letras o caracteres especiales.
Pos condicin:
Se genera y registra un nuevo nmero de registro de la aerolnea en la base de
datos.
Comentarios:
Un registro de aerolnea podr contener un solo encargado de dicho aerolnea.
No podr haber nmeros telefnicos que se repitan en cada registro.
10

Actualmente nicamente se registran aerolneas afiliados a la agencia de viajes.

Detalle de caso de uso Registro de Descuento
Nombre: Registro de Descuento
Actores Administrador
Descripcin El administrador podr ingresar el nombre de vuelo, paquete u
hotel y a su vez retornara el importe normal podr ingresar el
descuento y con que nombre se guardara, se generara el nuevo
precio con el descuento al fin se ingresa un id para poder
guardar y mediante un id se recupera la informacin del
descuento que se podr modificar o eliminar.
Precondicin Tener registrados vuelos, paquetes u hoteles
Flujo principal Se ingresa el nombre del objeto a aplicar descuento
Se identifica precio normal
Se registra descuento
Se registra nombre a guardar
Se genera precio con descuento
Se registra id
Se ingresa id
Se edita o elimina id
Se guarda cambio en caso de realizar









Administrador
Registro de
descuento
Bajas de
descuento
Cambios de
descuento
11

Detalle de caso de uso Cancelacin
Nombre: Cancelaciones
Actores Administrador
Descripcin El administrador podr cancelar una reservacin y se registra el
importe por cancelacin
Flujo principal Se ingresan los datos del cliente
Se obtienen los datos del paquete
Se genera un cargo por cancelacin
Se procede a cancelar
Se registra el importe de cancelacin
Consideraciones
previas
Solo se puede realizar una cancelacin con una semana de
anticipacin (5 das) y por esta accin se genera una comisin
del 10% del costo total de la venta y/o reservacin, esto por
paquete.
Para cancelaciones de reservaciones de hotel se puede realizar
con un da de anticipacin aplicando un cargo del 10% sobre el
monto de la reservacin.






Detalle de Caso de uso Alta Cl iente.
Cdigo: CU-AC01
Nombre: Alta cliente
Actores: usuario
Descripcin:
Registrar datos de los clientes nuevos que van a ser dados de alta en la
agencia de viajes
Precondicin:
El cliente queda registrado en la base de datos del sistema.
Flujo Principal:
1. El caso de uso comienza cuando la recepcionista selecciona la opcin Dar
de Alta clientes
2. El sistema muestra una ficha de alta de clientes, en la que se cargan los
Cancelaciones
Administrador
12

datos del cliente nuevo (ID, nombre, apellido materno, apellido paterno,
ciudad, municipio, calle, numero, CP, tipo, telfono, e-mail).
3. La encargada ingresa los datos solicitados.
4. La encargada elige la opcin Guardar datos.
5. El sistema verifica que estn ingresados todos los datos obligatorios (
nombres, apellidos , direccin, localidad, telfono).
6. El sistema verifica que el cliente no se encuentre registrado
7. El sistema guarda los datos del ofertante.
Flujos alternativos:
1. Cancelar Carga De Datos.
Flujos de Excepcin:
1. Faltan Datos Obligatorios.
2. -Cliente registrado.

Pos condicin:
- Datos de los clientes nuevos registrados.
Comentarios:



13

Base de Datos
Consultas
1.-selecciona el id de hotel que el nombre sea LUJ AN
select id_hotel from hotel where nombre="LUJ AN";
create view consultas1 as select id_hotel from hotel where nombre="LUJ AN";

+----------+
| id_hotel |
+----------+
| 37 |
+----------+
1 row in set (0.01 sec)

2.-selecciona el nombre de los empleados que sean hombres
select nombre from empleado where sexo="M";

create view consultas2 as select nombre from empleado where sexo="M";

+---------+
| nombre |
+---------+
| Antonio |
| josue |
| carlos |
+---------+
14

3 rows in set (0.02 sec)

3.-selecciona el id de sucursal que se encuentre encuentre en el estado de mexico
select id_sucursal from sucursales where estado="estado de mexico";

create view consultas3 as select id_sucursal from sucursales where
estado="estado de mexico";

+-------------+
| id_sucursal |
+-------------+
| 7 |
| 8 |
+-------------+
2 rows in set (0.01 sec)

4.-quiero conocer el nombre del empleado que tenga la maxima fecha de
mysql>select nombre from empleado where fecha_nac=(select max(fecha_nac)
from empleado);
+--------+
| nombre |
+--------+
| paola |
+--------+
1 row in set (0.00 sec)

15

create view consultas4 as select nombre from empleado where fecha_nac=(select
max(fecha_nac) from empleado);

5.-Quiero conocer el nombre del estado cuando el nombre del estado inicie con T
o el id sea igual a 10

mysql>select estado from destino where nombre=(select nombre from destino
where municipio like"t%" or id_paquete=10);
+---------+
| estado |
+---------+
| Hidalgo |
+---------+
1 row in set (0.00 sec)

create view consultas5 as select estado from destino where nombre=(select
nombre from destino where municipio like"t%" or id_paquete=10);
Subconsultas

1.-selecciona el nombre del empleado que trabaja en la sucursal con nombre alex
select nombre from empleado where id_sucursal=(select id_sucursal from
sucursales where nombre="alex");

create view sub1 as select nombre from empleado where id_sucursal=(select
id_sucursal from sucursales where nombre="alex");



16

+---------+
| nombre |
+---------+
| Antonio |
| josue |
| paola |
| carlos |
+---------+
4 rows in set (0.00 sec)

2.-selecciona el destino del vuelo que el id de boleto sea 50
select destino from vuelos where id_vuelo=(select id_vuelo from boletos where
id_boleto="50");

create view sub2 as select destino from vuelos where id_vuelo=(select id_vuelo
from boletos where id_boleto="50");

+-------------+
| destino |
+-------------+
| las lourdes |
+-------------+
1 row in set (0.00 sec)

3.-selecciona el id de boleto que el numero de personas sea igual a 10
17

select id_boleto from boletos where id_reservacion=(select id_reservacion from
reservacion where N_personas="10");

create view sub3 as select id_boleto from boletos where id_reservacion=(select
id_reservacion from reservacion where N_personas="10");

+-----------+
| id_boleto |
+-----------+
| 44 |
+-----------+
1 row in set (0.00 sec)

4.-selecciona el nombre y estado de destino donde id de hotel sea 37
select nombre, estado from destino where id_paquete=(select id_paquete from
paquete where id_paquete=(select id_paquete from Hotel_paquete where
id_hotel="37"));

create view sub4 as select nombre, estado from destino where id_paquete=(select
id_paquete from paquete where id_paquete=(select id_paquete from
Hotel_paquete where id_hotel="37"));
+----------+---------+
| nombre | estado |
+----------+---------+
| tenorios | Hidalgo |
+----------+---------+
1 row in set (0.00 sec)
18


5.-selecciona el nombre del cliente que compro boletos por valor de 600 pesos
select nombre from cliente where id_cliente=(select id_cliente from boleto where
precio="600");
create view sub5 as select nombre from cliente where id_cliente=(select id_cliente
from boletos where precio="600");

+--------+
| nombre |
+--------+
| MIGUEL |
+--------+
1 row in set (0.00 sec)

6.-Conocer el identificador y nombre del hotel que se encuentre mas 2 paquetes.
select hotel.id_hotel,nombre from hotel inner join hotel_paquete on
hotel.id_hotel=hotel_paquete.id_hotel where hotel_paquete.id_hotel >2;
+----------+---------------+
| id_hotel | nombre |
+----------+---------------+
| 3 | pikispikis |
| 4 | tortugas |
| 30 | LAS FLORES |
| 31 | LAS FUENTES |
| 33 | LOS ARBOLES |
| 34 | LAS MANCIONES |
19

| 36 | TROMPETAS |
| 37 | LUJ AN |
+----------+---------------+
8 rows in set (0.39 sec)

Create view sub6 as select hotel.id_hotel,nombre from hotel inner join
hotel_paquete on hotel.id_hotel=hotel_paquete.id_hotel where
hotel_paquete.id_hotel >2;

Quiero conocer el nombre del cliente que haya comprado el boletoo mas caro
registrado en la base
mysql>select nombre from cliente inner join boletos on
boletos.id_cliente=cliente.id_cliente where precio=(select max(precio) from
boletos);
+--------+
| nombre |
+--------+
| MIGUEL |
+--------+
1 row in set (0.00 sec)

Trigger

1.- create table cancelacion(id_cancelacion int auto_increment primary key,
id_reser int, personas int, cliente int)engine=innodb;

delimiter //
20

create trigger cancel after delete on reservacion for each row
insert into cancelacion values(old.id_reservacion,old.N_personas,old.id_cliente,
old.id_descuento);

delete from reservacion where id_reservacion=20;

select *from cancelacion;

-------------Trigger----------------

2.- create table modificado(id_cliente int, nombre varchar(30), ap_pat
varchar(30),ap_mat varchar(30))engine=innodb;

create trigger modificar after update on cliente for each row
insert into modificado(id_cliente,nombre, ap_pat,ap_mat)
values(old.id_cliente,old.nombre,old.ap_pat,old.ap_mat);

update cliente set nombre="angus" where id_cliente=60;

------------Trigger----------------

3.- create table modificar_empleado(id_empleado int, nombre varchar(30), ap_pat
varchar(30), ap_mat varchar(30))engine=innodb;

create trigger modificar_empleado after update on empleados for each row
insert into modificar_empleado(id_empleado, nombre, ap_pat, ap_mat)
values(old.id_empleado,old.nombre,old.ap_pat,old.ap_mat);
21


update empleados set nombre="algo" where id_empleado=1;

procedi mientos con disparadores
1.- resta lugares de hotel

create table habitacion_disponibles(id_hotel int , N_habitaciones
int)engine=innodb;

create procedure habit(in hot int, hab int) begin declare exist int;
set exist =(select N_hab from hotel where id_hotel =hot);
set exist =exist - hab; update hotel set N_hab=exist where id_hotel=hot; end; //

create trigger disp_hab after insert on habitacion_disponibles for each row
begin
call habit (new.id_hotel,new.N_habitaciones);
end //

insert into habitacion_disponibles values(2,2);

select *from hotel;





22

---------------------procedimientos con disparadores----------
2.- calcula descuento de boletos;

create table boletos_descuento(id_boleto int,precio_con_descuento
decimal(9,2))engine=innodb;

delimiter //

create procedure bol_desc(in boleto int, precio int) begin set @prex =(precio /30)-
precio;
end; //

create trigger descuento before insert on boletos_descuento for each row
begin
call bol_desc(new.id_boleto,new.precio_con_descuento); set
new.precio_con_descuento=@prex; end; //

insert into boletos_descuento values(40,300);

select *from boletos_descuento;


---------------------procedimientos con disparadores----------
3.- resta lugares a aerolnea

create table disponibles_aerolinea(id_aerolinea int, compaia varchar(30),
N_asientos int)engine=innodb;
23


create procedure plazas_disponibles(in vuelo int, destino varchar (30), salida
date,llegada date, tiempo_salida time,tiempo_llegada time, compaia
varchar(30),plazas int,aero int) begin
declare lugares int;
set lugares =(select N_plazas from aerolinea where id_aero=aero);
set lugares =lugares - plazas; update aerolinea set N_plazas=lugares where
id_aero=aero;
end; //

create trigger lugares after insert on vuelos for each row begin
call plazas_disponibles(new.id_vuelo,new.destino,new.fecha_salida,
new.fecha_llegada,new.hora_salida,new.hora_llegada, new.campaa,
new.N_asientos, new.id_aero);
end; //

insert into vuelos values(500,"santa lopez", "2012-12-20","2013-1-20","12:00",
"06:00","mexicana","20",1);

select *from aerolinea;

---------------------procedimientos con disparadores----------
4.- suma lugares al cancelar

create table vuelo_cancelado(id_cancel_vuelo int auto_increment primary key,
id_vuelo int,N_asientos int,id_aero int)engine=innodb;

create procedure vuelcancel(in vuelo int,asientos int,aero int)
24

begin
declare kus int;
set kus=(select N_plazas from aerolinea where id_aero=aero);
set kus =kus+asientos;
update aerolinea set N_plazas=kus where id_aero=aero;
end;
//

create trigger sanco after delete on vuelos for each row
begin
call vuelcancel(old.id_vuelo, old.N_asientos, old.id_aero);
insert into vuelo_cancelado(id_vuelo,N_asientos,id_aero)
values(old.id_vuelo,old.N_asientos,old.id_aero);
end; //

delete from vuelos where id_vuelo=400;

select *from aerolinea;

---------------------procedimientos con disparadores----------
5.- agrega el nombre del empleado

create procedure nom(empleado int, socio int)
begin
set @as =(select nombre from empleados where id_empleado=empleado);
25

end;
//

create trigger bas before insert on atiende for each row
begin
call nom(new.id_empleado,new.id_socio); set new.nombre_empleado=@as;
end;
//
insert into atiende(id_empleado,id_socio) values(2,1);

Indices
1.-CORREOS
mysql>create index correos on cliente (correo);
Query OK, 10 rows affected (0.22 sec)
Records: 10 Duplicates: 0 Warnings: 0

mysql>show index from CLIENTE;
+---------+------------+--------------+--------------+--------------+-----------+-------------+---------
-+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation |
Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+---------+------------+--------------+--------------+--------------+-----------+-------------+---------
-+--------+------+------------+---------+
| CLIENTE | 0 | PRIMARY | 1 | id_cliente | A | 2 |
NULL | NULL | | BTREE | |
| CLIENTE | 0 | telefono_cel | 1 | telefono_cel | A | 2 |
NULL | NULL | YES | BTREE | |
26

| CLIENTE | 1 | correos | 1 | correo | A | 2 | NULL |
NULL | YES | BTREE | |
+---------+------------+--------------+--------------+--------------+-----------+-------------+---------
-+--------+------+------------+---------+
3 rows in set (0.00 sec)
2.-Precios
mysql>create index precios on boletos (precio);
Query OK, 10 rows affected (0.06 sec)
Records: 10 Duplicates: 0 Warnings: 0

mysql>show index from boletos;
+---------+------------+----------------+--------------+----------------+-----------+-------------+-----
-----+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation
| Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+---------+------------+----------------+--------------+----------------+-----------+-------------+-----
-----+--------+------+------------+---------+
| boletos | 0 | PRIMARY | 1 | id_boleto | A | 2 |
NULL | NULL | | BTREE | |
| boletos | 1 | id_reservacion | 1 | id_reservacion | A | 2 |
NULL | NULL | YES | BTREE | |
| boletos | 1 | id_cliente | 1 | id_cliente | A | 2 | NULL
| NULL | YES | BTREE | |
| boletos | 1 | id_destino | 1 | id_destino | A | 2 |
NULL | NULL | YES | BTREE | |
| boletos | 1 | id_paquete | 1 | id_paquete | A | 2 |
NULL | NULL | YES | BTREE | |
| boletos | 1 | id_vuelo | 1 | id_vuelo | A | 2 | NULL
| NULL | YES | BTREE | |
27

| boletos | 1 | precios | 1 | precio | A | 2 | NULL |
NULL | YES | BTREE | |
+---------+------------+----------------+--------------+----------------+-----------+-------------+-----
-----+--------+------+------------+---------+
7 rows in set (0.01 sec)

3.-Porcentaje_decuento
mysql>create index porcenteje_descuento on descuento (porcentaje);
Query OK, 10 rows affected (0.03 sec)
Records: 10 Duplicates: 0 Warnings: 0
mysql>show index from descuento;
+-----------+------------+----------------------+--------------+--------------+-----------+-------------
+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name |
Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-----------+------------+----------------------+--------------+--------------+-----------+-------------
+----------+--------+------+------------+---------+
| descuento | 0 | PRIMARY | 1 | id_descuento | A |
2 | NULL | NULL | | BTREE | |
| descuento | 1 | porcenteje_descuento | 1 | porcentaje | A |
2 | NULL | NULL | YES | BTREE | |
+-----------+------------+----------------------+--------------+--------------+-----------+-------------
+----------+--------+------+------------+---------+
2 rows in set (0.01 sec)




28

4.- Municipios
mysql>create index municipios on destino (municipio);
Query OK, 10 rows affected (0.08 sec)
Records: 10 Duplicates: 0 Warnings: 0

mysql>show index from destino;
+---------+------------+------------+--------------+-------------+-----------+-------------+----------
+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation |
Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+---------+------------+------------+--------------+-------------+-----------+-------------+----------
+--------+------+------------+---------+
| destino | 0 | PRIMARY | 1 | id_destino | A | 2 | NULL |
NULL | | BTREE | |
| destino | 1 | id_paquete | 1 | id_paquete | A | 2 | NULL |
NULL | YES | BTREE | |
| destino | 1 | municipios | 1 | municipio | A | 2 | NULL |
NULL | YES | BTREE | |
+---------+------------+------------+--------------+-------------+-----------+-------------+----------
+--------+------+------------+---------+
3 rows in set (0.00 sec)

5.- RFC_sucursales
mysql>create index rfc_sucursales on sucursales (rfc);
Query OK, 10 rows affected (0.06 sec)
Records: 10 Duplicates: 0 Warnings: 0


29

mysql>show index from sucursales;
+------------+------------+----------------+--------------+-------------+-----------+-------------+-----
-----+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation
| Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+------------+------------+----------------+--------------+-------------+-----------+-------------+-----
-----+--------+------+------------+---------+
| sucursales | 0 | PRIMARY | 1 | id_sucursal | A | 2 |
NULL | NULL | | BTREE | |
| sucursales | 0 | telefono | 1 | telefono | A | 2 |
NULL | NULL | YES | BTREE | |
| sucursales | 1 | rfc_sucursales | 1 | RFC | A | 2 |
NULL | NULL | YES | BTREE | |
+------------+------------+----------------+--------------+-------------+-----------+-------------+-----
-----+--------+------+------------+---------+
3 rows in set (0.00 sec)

6.- Nombre_de_paquetes

mysql>create index nombres_de_paquetes on paquete (nombre);
Query OK, 10 rows affected (0.03 sec)
Records: 10 Duplicates: 0 Warnings: 0






30

mysql>show index from paquete;
+---------+------------+---------------------+--------------+-------------+-----------+-------------+---
-------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name |
Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+---------+------------+---------------------+--------------+-------------+-----------+-------------+---
-------+--------+------+------------+---------+
| paquete | 0 | PRIMARY | 1 | id_paquete | A | 2 |
NULL | NULL | | BTREE | |
| paquete | 1 | nombres_de_paquetes | 1 | nombre | A |
2 | NULL | NULL | YES | BTREE | |
+---------+------------+---------------------+--------------+-------------+-----------+-------------+---
-------+--------+------+------------+---------+
2 rows in set (0.00 sec)

7.-Destinos
mysql>create index destinos on vuelos (destino);
Query OK, 10 rows affected (0.02 sec)
Records: 10 Duplicates: 0 Warnings: 0

mysql>show index from vuelos;






31

+--------+------------+----------+--------------+-------------+-----------+-------------+----------+---
-----+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation |
Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+--------+------------+----------+--------------+-------------+-----------+-------------+----------+---
-----+------+------------+---------+
| vuelos | 0 | PRIMARY | 1 | id_vuelo | A | 2 | NULL |
NULL | | BTREE | |
| vuelos | 1 | destinos | 1 | destino | A | 2 | NULL |
NULL | YES | BTREE | |
+--------+------------+----------+--------------+-------------+-----------+-------------+----------+---
-----+------+------------+---------+
2 rows in set (0.01 sec)
8.-Telefonos_hoteles
mysql>create index telefonos_hoteles on hotel (telefono);
Query OK, 10 rows affected (0.05 sec)
Records: 10 Duplicates: 0 Warnings: 0
mysql>show index from hotel;
+-------+------------+-------------------+--------------+-------------+-----------+-------------+-------
---+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation |
Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------+------------+-------------------+--------------+-------------+-----------+-------------+-------
---+--------+------+------------+---------+
| hotel | 0 | PRIMARY | 1 | id_hotel | A | 2 | NULL
| NULL | | BTREE | |
| hotel | 0 | telefono | 1 | telefono | A | 2 | NULL |
NULL | YES | BTREE | |
| hotel | 1 | telefonos_hoteles | 1 | telefono | A | 2 |
NULL | NULL | YES | BTREE | |
32

+-------+------------+-------------------+--------------+-------------+-----------+-------------+-------
---+--------+------+------------+---------+
3 rows in set (0.00 sec)
9.-Telefonos_empleados
mysql>create index telefonos_empleados on empleado (telefono);
Query OK, 10 rows affected (0.07 sec)
Records: 10 Duplicates: 0 Warnings: 0

mysql>show index from empleado;
+----------+------------+---------------------+--------------+-------------+-----------+-------------+--
--------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name |
Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+----------+------------+---------------------+--------------+-------------+-----------+-------------+--
--------+--------+------+------------+---------+
| empleado | 0 | PRIMARY | 1 | id_empleado | A | 2
| NULL | NULL | | BTREE | |
| empleado | 0 | telefono | 1 | telefono | A | 2 |
NULL | NULL | YES | BTREE | |
| empleado | 1 | id_sucursal | 1 | id_sucursal | A | 2 |
NULL | NULL | YES | BTREE | |
| empleado | 1 | telefonos_empleados | 1 | telefono | A | 2
| NULL | NULL | YES | BTREE | |
+----------+------------+---------------------+--------------+-------------+-----------+-------------+--
--------+--------+------+------------+---------+
4 rows in set (0.00 sec)
10.-numero_personas
mysql>create index numero_personas on reservacion (n_personas);
Query OK, 10 rows affected (0.03 sec)
33

Records: 10 Duplicates: 0 Warnings: 0

mysql>show index from reservacion;
+-------------+------------+-----------------+--------------+----------------+-----------+-------------
+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name |
Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------------+------------+-----------------+--------------+----------------+-----------+-------------
+----------+--------+------+------------+---------+
| reservacion | 0 | PRIMARY | 1 | id_reservacion | A | 2
| NULL | NULL | | BTREE | |
| reservacion | 1 | id_cliente | 1 | id_cliente | A | 2 |
NULL | NULL | YES | BTREE | |
| reservacion | 1 | id_descuento | 1 | id_descuento | A | 2
| NULL | NULL | YES | BTREE | |
| reservacion | 1 | numero_personas | 1 | N_personas | A |
2 | NULL | NULL | YES | BTREE | |
+-------------+------------+-----------------+--------------+----------------+-----------+-------------
+----------+--------+------+------------+---------+
4 rows in set (0.00 sec)

También podría gustarte