Vous êtes sur la page 1sur 5

TECNOLGICO DE ESTUDIOS SUPERIORES DE TIANGUISTENCO

DIVISIN DE INGENIERA EN SISTEMAS COMPUTACIONALES

Taller de Base de Datos.

Docente: Jenny Huerta Dvila.

Alumno:

Marcos Guadalupe Hoyo Mata.

Proyecto Alojamientos en Consultas SQL

Semestre: 5

Grupo: 502

Introduccin:
En este proyecto se desarrolla una base de datos llamada alojamientos donde desde la creacin hasta la manipulacin de esta se describen aqu. Se describe como crear la base cada una de sus tablas y cada uno de sus registros en cada tabla. Tambin explicamos los conceptos bsicos dentro de la base de datos identificndolos por sus nombres como el grupo de relaciones de la base o el grupo de grados de la base de datos. En esta base de datos tambin elaboramos una serie de consultas estas consultas se realizan solo con palabras claves en SQL como son select, from, where, group by, and, or entre otras y con ellas logramos crear una consulta. El primer paso para la creacin de toda esta base es un diagrama el cual nos entregaron para con el desarrollar el segundo paso ms importante que es el esqueleto del sistema gestor de base de datos, con el cdigo que aqu redactamos podremos crear todo desde la base de datos hasta ingresar cada uno de los registros que aqu se muestran todos estos con sus debidos tipos de datos y restricciones pertinentes a cada atributo. Cuando la base de datos y los registros ya estaban creados y bien establecidas estaban las relaciones pudimos pasar a los problemas en este caso 3 que eran una especie de consultas en las que nos pedan extraer ciertos datos de una o diversas tablas para con ello lograr una buena consulta. Cada una de las consultas arrojaba una cantidad pequea de registros ya que las condiciones para cada una de las consultas son algo especficas y con ello logra reducir mucho la oportunidad que sean muchos los registros que cumplan con estas muchas especificaciones de consulta. Con esta base de datos y su creacin pude reforzar mis conocimientos en todas las palabras especiales que utilizamos en mysql ya que este utilizamos desde una simple sentencia de creacin de base de datos hasta consultas mucho muy especficas donde usamos mucho ms palabras reservadas esto significa un repaso amplio de todas las palabras clave su verdadero significado y utilidad as como un aumento en la habilidad para crear bases de datos desde consola, donde ya aprendimos a usarlas con un bloc de notas para facilitar el uso de las consultas y siempre tener un respaldo de cada una de las cosas que metes en la consola de ejecucin de mysql siendo as esta idea de gran ayuda para todo este proyecto en general.

1.- Realiza el esquema de base de datos en el SGBD es muy importante muestre el tipo de dato de cada atributo. Describe el esquema de cada una de las relaciones (Tuplas, cardinalidad, grado, rango , dominio, atributos y relaciones). create database alojamientos; use alojamientos; create table oficio(oficio varchar(30) primary key, descripcion varchar(30)); create table vivienda(alojamiento varchar(30) primary key, nom_completo varchar(30), responsable varchar(30), direccion varchar(30), numero int); create table empleado(nombre varchar(30) primary key, edad int, alojamiento varchar(30) , foreign key(alojamiento) references vivienda); create table oficioempleado(nombre varchar(30), oficio varchar(30), calificacion varchar(30) , foreign key(nombre) references empleado, foreign key(oficio) references oficio); insert into empleado(nombre,edad,alojamiento) values ('Alonso Tellez',23,'Paracuellos'), ('Daz Jimnez',18,'Barajas'), ('Ezquerro Tom',43,'Vallecas'), ('Gonzlez Orbea',41,'Barajas'), ('Prez Lpez',21,'Barajas'), ('Vzquez Lpez',67,'Pitis'), ('Gonzlez Lpez',23,'Ponce'), ('Jurez Noriega',25,'Toledo'), ('Tejerina Ruiz',31,'Brasilia'), ('lvarez Rodrguez',23,'Paracuellos'), ('Donoso Antn',18,'Barajas'), ('Egubar Puente',43,'Vallecas'), ('Gmez Ordua',41,'Barajas'), ('Pavn Lpez',21,'Barajas'), ('Panadero Juan',21,'Barajas'); insert into oficioempleado(nombre,oficio,calificacion) values ('Alonso Tellez','Herrero','Excelente'), ('Daz Jimnez','Herrero','Excelente'), ('Dorado Rodrguez','Conductor','Excelente'), ('Ezquerro Tom','Leador','Bueno'), ('Gonzlez Orbea','Herrero','Preciso'), ('Prez Lpez','Conductor','Rpido'), ('Pedrero Linez','Obrero','Normal'), ('Vzquez Lpez','Labrador','Lento'), ('Donoso Cid','Labrador','Normal'), ('Gonzlez Lpez','Herrero','Excelente'), ('Jurez Noriega','Conductor','Excelente'), ('Tejerina Ruiz','Leador','Bueno'), ('Alvarez Rodrguez','Conductor','Rpido'), ('Donoso Antn','Herrero','Preciso'), ('Daro Rodrguez','Obrero','Normal'), ('Egubar Puente','Labrador','Lento'), ('Gmez Ordua','Herrero','Excelente'), ('Pavn Lpez','Conductor','Excelente'), ('Panadero Juan','Picador','Preciso'); insert into oficio(oficio,descripcion) values ('Conductor','Conductor de autobs'), ('Herrero','Herrar caballos'), ('Labrador','Cultivar la tierra'), ('Leador','Talar rboles'), ('Obrero','Trabajar en general'), ('Picador','Picar en los tneles del metro'); insert into vivienda(alojamiento,nom_completo,responsable,di reccion,numero) values ('Paracuellos','Paracuellos Jarma','Alonso Tellez','Elipa',12), ('Vallecas','Puente Vallecas','Ezquerro Tom','Musas',1), ('Ponce','Ponce Len','Gonzlez Lpez','Ponce',23), ('Toledo','Puerta Toledo','Jurez Noriega','Toledo',25), ('Barajas','Barajas Pueblo','Prez Lpez','Eloy',2), ('Brasilia','Parque Brasilia','Tejerina Ruiz','Brasilia',3), ('Pitis','Estacin Pitis','Vzquez Lpez','Ponce',43);

Tuplas
empleado ('Alonso Tellez',23,'Paracuellos') ('Daz Jimnez',18,'Barajas') ('Ezquerro Tom',43,'Vallecas') oficioempleado ('Alonso Tellez','Herrero','Excelente') ('Daz Jimnez','Herrero','Excelente') ('Dorado Rodrguez','Conductor','Excelente') oficio ('Conductor','Conductor de autobs') ('Herrero','Herrar caballos') ('Labrador','Cultivar la tierra')

vivienda ('Paracuellos','Paracuellos Jarma','Alonso Tellez','Elipa',12) ('Vallecas','Puente Vallecas','Ezquerro Tom','Musas',1) ('Ponce','Ponce Len','Gonzlez Lpez','Ponce',23)

Grado
Empleado { 3 } Oficioempleado { 3 } Oficio { 2 } Vivienda { 4 }

Rango
Empleado
Nombre a-z, A-Z Edad 0-9 Alojamiento a-z, A-Z

Alonso Tellez Daz Jimnez Dorado Rodrguez Ezquerro Tom Gonzlez Orbea Prez Lpez Pedrero Linez Vzquez Lpez Donoso Cid Gonzlez Lpez Jurez Noriega Tejerina Ruiz Alvarez Rodrguez Donoso Antn Daro Rodrguez Egubar Puente Gmez Ordua Pavn Lpez Panadero Juan

Oficio
Oficio Conductor Herrero Labrador Leador Obrero Picador

Oficioempleado
Nombre a-z, A-Z Oficio a-z, A-Z Calificacin a-z, A-Z

Oficio
Oficio a-z, A-Z Descripcin a-z, A-Z

Vivienda
Alojamiento Paracuellos Vallecas Ponce Toledo Barajas Brasilia Pitis

Vivienda
Alojamiento a-z, A-Z NombreCompleto a-z, A-Z Responsable a-z, A-Z Direccin a-z, A-Z,0-9

Dominios
Empleado
Nombre Alonso Tellez Daz Jimnez Ezquerro Tom Gonzlez Orbea Prez Lpez Vzquez Lpez Gonzlez Lpez Jurez Noriega Tejerina Ruiz lvarez Rodrguez Donoso Antn Egubar Puente Gmez Ordua Pavn Lpez Panadero Juan

Atributos
Empleado
Nombre Edad Alojamiento

Oficioempleado
Nombre Oficio Calificacin

Oficio
Oficio Descripcin

Vivienda
Alojamiento NombreCompleto Responsable Direccin

Oficioempleado
Nombre

Relaciones {empleado, oficioempleado, oficio,


vivienda}

Consulta 1.- Da el nombre del empleado, el oficio, la descripcin del oficio, el nombre completo del alojamiento, de todos aquellos empleados que encuentren o no se encuentren registrados con empleo cuya calificacin sea excelente.

select oe.nombre,oe.oficio,o.descripcion,v.nom_completo from oficio o, vivienda v,oficioempleado oe,empleado e where e.nombre=oe.nombre and o.oficio=oe.oficio and e.alojamiento=v.alojamiento and oe.calificacion="excelente" order by oficio;

Consulta 2.- Determina el nombre del empleado, la edad, el oficio, la calificacin, el responsable de la vivienda, la descripcin de oficio, de todos aquellos empleados que tengan un empleo, que no vivan en una vivienda cuya direccin sea impar. As como el oficio comience con una consonante. select e.nombre,e.edad, oe.oficio, oe.calificacion, o.descripcion,v.responsable,v.direccion from oficio o, vivienda v,oficioempleado oe,empleado e where e.nombre=oe.nombre and o.oficio=oe.oficio and e.alojamiento=v.alojamiento and (oe.calificacion= "excelente" or oe.calificacion = "bueno") and (oe.oficio not like 'obrero') and(CHARACTER_LENGTH(LOWER(e.nombre)) CHARACTER_LENGTH(replace (replace(replace(replace(replace(LOWER(e.nombre),'a',''),'e',''),'i',''),'o',''),'u','')) > 3) having e.edad >40 and e.edad<60;

Consulta 3.- Muestra el nombre, la edad, el oficio, la calificacin, la descripcin del oficio, el nombre del responsable, la direccin , de aquellos que tengan un oficio con calificacin Excelente o Bueno. A s como su edad sea entre 40 y 60. Por otro lado no deber tener oficio de obrero. Y su nombre deber tener tres vocales diferentes. select oe.nombre,e.edad,oe.oficio,oe.calificacion,v.responsable,o.descripcion, v.numero from oficio o, vivienda v,oficioempleado oe,empleado e where e.nombre=oe.nombre and o.oficio=oe.oficio and e.alojamiento=v.alojamiento and (oe.oficio not like 'a%' or oe.oficio not like 'e%' or oe.oficio not like 'i%' or oe.oficio not like 'o%' or oe.oficio not like 'u%') and (v.numero % 2= 0)order by oficio;

Vous aimerez peut-être aussi