You are on page 1of 22

TRABAJO BASE DE DATOS

“APLICACIÓN BOLSA DE EMPLEO ITPB”

JOHN FREDY MONTOYA


NADIA LORENA LONDOÑO

PROFESORA: ORALIA CORTÉS G.


MATERIA: BASE DE DATOS II

PASCUAL BRAVO INSTITUCION UNIVERSITARIA

MEDELLIN

2010
Identificador del Documento:

Nombre del documento

Estado del documento:

Responsables
Autor Fredy Montoya
Lorena Londoño
Revisiones Oralia Cortes
Autoriza Byron Alvarez

Control de Versiones del Documento

Versión Creación Liberación Descripción Cambio

0.0 Versión inicial

0.1 Revisión del documento

0.2

DOCUMENTO DE ESPECIFICACIÓN DE REQUERIMIENTOS

1. PROPÓSITO:

El propósito de la base de datos es manejar, almacenar, controlar, y visualizar la


información de la bolsa de empleo del Tecnológico Pascual Bravo, permitiendo que la
estructura de almacenaje y búsqueda de las empresas sea la mas adecuada y eficaz para
lograr buenos resultados que favorezcan a los egresados de la institución.

2. DESCRIPCIÓN DEL SISTEMA

Tener un acceso eficaz a la información de las empresas que solicitan egresados del
tecnológico pascual bravo , permitiendo que el encargado pueda visualizar el nombre de
la empresa los perfiles que busca y de que tecnologías los requiere; para ayudar a tener un
manejo controlado de toda la información que favorezca la vinculación laboral de
egresados de la institución a sus empresas , y además de eso poder guardar la información
en la base de datos de nuevas empresas que requieren conseguir vacantes con los perfiles
de los tecnólogos del Pascual Bravo.

3. REQUERIMIENTOS FUNCIONALES

Req1: Registrar una empresa: La Base de Datos deberá permitir el registro de los
datos de la empresa que necesita egresados de la institución como nombre de la
empresa, teléfono, perfil requerido, nombre de contacto.

Req2: Registro de egresados: La Base de Datos almacenará información acerca


de los egresados que hayan dejado su hoja de vida en la bolsa de empleo del
tecnológico Pascual Bravo para agilizar la búsqueda de los perfiles requeridos por
las empresas.

3.1 MODELO VERBAL

3.1.1 ANTECEDENTES

El Pascual Bravo, una Institución fundada en 1938 de carácter oficial, pero su naturaleza
jurídica y su organización ha evolucionado a tal punto que en la actualidad ha sido promovida
a una institución Universitaria.

Su primera sede fue en la carrera Girardot con la calle Pichincha donde hoy funciona la caja de
previsión Social, en 1942 se traslada al sector de robledo la Pilarica donde se ubica
actualmente y ha prestado un moderno servicio de Educación Tecnológica.

El pascual bravo no cuenta con un modelo de información estructurada para su bolsa de


empleo; esta ,en la actualidad maneja una gran cantidad de información en hojas de calculo de
Excel ya que no poseen una base de datos que les facilite el trabajo de almacenamiento y
búsqueda de información de las empresas que requieren egresados del pascual bravo, por este
motivo

Se pretende buscar o implementar un sistema en el cual el encargado de manejar la bolsa de


empleo de la institución pueda almacenar toda la información de las empresas que busquen
vincular egresados a una vida laboral activa, como también obtener de forma agil los perfiles y
tecnologías que se adapten a lo que necesita cada empresa esto con la intención de que la
aplicación sea eficaz y ayude a mejorar el funcionamiento de la bolsa de empleo.

Debido a lo anterior se opto por crear un sistema de acceso a la información de la bolsa de


empleo, planteada de la siguiente manera:

 Este modulo estructural de información será una buena base para que el encargado de
la bolsa de empleo pueda almacenar los datos de las nuevas empresas y tener un
control de estas.

 El encargado de la bolsa de empleo tendrá la facilidad de ver la información de las


empresas que estará almacenada en las tablas con el objetivo de mantener actualizada
la aplicación para obtener resultados laborales notables.
 La sistematización de datos es un paso para que el encargado de la bolsa de empleo
pueda brindarle a las empresas ágilmente información sobre los perfiles que buscan
para sus empresas haciendo mas rápida la búsqueda de los egresados que se
acomoden a las exigencias de cada empresa.

3.1.2. OBJETIVOS:

GENERAL:

 Se pretende con la base de datos desarrollar un medio confiable, ágil y


de fácil manejo de la información ingresada por el encargado ,sobre las
empresas y egresados que requieren el servicio de la bolsa de empleo
de la institucion.

ESPECÍFICOS:

 Recopilar la información necesaria para el desarrollo de la base de


datos.
 Cumplir con todos los requerimientos planteados
 Realizar un análisis de la información obtenida.
 Mostrar el avance del sistema para verificar lo requerido por el cliente
este en orden.
 Plantear lo establecido para realizar el modelo que llevara dicha base
de datos.
 Planear diseño y desarrollo del sistema según los requerimientos dados
al inicio del proyecto.
 Quedar satisfechos con nuestro trabajo y que el cliente se sienta
complacido y conforme con el desarrollo de nuestro proyecto.
 Realizar consultas de la información de las empresas, los datos de los
egresados de manera que la información sea más fácil de manejar.
 Dar agilidad al encargado de la bolsa de empleo para que pueda
desempeñar su trabajo de la mejor manera y preste una ayuda
importante a los egresados y empresas que contactaron el servicio.
 Manejo de la información en forma adecuada, fácil y confiable.

3.1.3 MODELO VERBAL SITUACIÓN ACTUAL

En el Tecnológico pascual bravo no existe la implementación de una base de


datos para la bolsa de empleo , lo que genera una gran dificultad para el
encargado de este trabajo de facilitar a los egresados y las empresas información
sobre vacantes.

El único medio en el que se maneja la información es mediante hojas de calculo


de Excel, lo que hace que el trabajo sea mas lento ya que no se cuenta con una
aplicación de almacenaje y búsqueda que permita tener control sobre toda la
información que esta maneje.

En el momento tenemos en nuestro poder los documentos que se nos fueron


entregados a finales del mes de septiembre por la señora Marybel Mosquera
encargada actualmente de la bolsa de empleo del ITPB .

Estos documentos con fecha de modificación del año 2010 fueron entregados en
memorias USB a los integrantes del grupo de desarrolladores de la base de datos.

En el momento contamos con 2 documentos

Vacantes, En este se encuentra la información que se almacena de las empresas


como lo son nombres, teléfonos, nombre de contacto, perfiles, tecnologías que
buscan, salarios etc.

Además de un documento egresados hoja de vida, sobre la información que se


guarda de los egresados que solicitan el servicio de bolsa de empleo ,como
nombre, teléfonos, tecnología, perfil, año de graduación y experiencia

Los cuales son la información necesaria para el desarrollo del trabajo que se nos
fue asignado.

Con el desarrollo de esta aplicación pretendemos prestar un servicio a la bolsa de


empleo de la institución pascual bravo no solo a su encargado sino también a los
egresados y empresas que contactan este servicio , facilitando el manejo de
información que le pueda servir a cada una de las partes.

3.1.4. MODELO VERBAL SITUACIÓN FUTURA

Se implementará una base de datos que permita un manejo de la información


más eficiente, eficaz, confiable y seguro en el manejo y control de la
información de las empresas que buscan llenar sus vacantes con tecnólogos
del Pascual Bravo y egresados que llevan sus hojas de vida esperando
encontrar una oportunidad de empleo. Este sistema de Base de Datos permitirá
generar consultas, vistas o modificaciones de las empresas y egresados

Mediante el buen funcionamiento del programa desarrollado pretendemos cubrir


los siguientes propósitos:
 Por medio de la aplicación se busca que el encargado de la bolsa de empleo
pueda tener un control de la información de las empresas que requieren
tecnólogos del pascual bravo además agilizar la búsqueda de los perfiles que
mas se acomoden a los requeridos por las empresas haciendo que la bolsa de
empleo sea mas eficiente y preste un mejor servicio a las empresas y los
egresados que la requieran.
 El buen desarrollo de la aplicación permitirá al encargado que pueda entregar
resultados de manera mas rápida a la que se maneja ahora ya que
pretendemos que la aplicación permita al encargado dejar de utilizar tantas
hojas de Excel ya que podrá tener ordenada la información y le permitira tener
mas agilidad y tiempos de respuesta mas apropiados si utiliza el aplicativo que
se desarrollara.

3.2. REQUERIMIENTOS

Para la implementación de la base de datos se requiere:

 Recoger información primordial que utiliza en el momento la bolsa de


empleo es decir todo la información que manejen de las empresas y de
los egresados

1. REQUERIMIENTOS NO FUNCIONALES

4.1 REQUERIMIENTOS DE ENTORNO:

PARA EL DESARROLLO

-Sistema operativo Windows XP o superior


-Sistema de base de datos: Microsoft SQL Server 2005
-lenguaje de desarrollo: Microsoft Visual Studio 2008
-No requiere conexión a Internet

PARA LA PUESTA EN MARCHA


-Windows XP o superior
-No requiere conexión a internet

PARA LA ESTACIÓN DE TRABAJO DEL USUARIO.

-Windows xp o distribuciones, se determina que la información se mantendrá en


funcionamiento alto en un sistema operativo más avanzado que el mencionado
anteriormente.

4.2 REQUERIMIENTOS ERGONÓMICOS:


Guía didáctica de manipulación de datos en el esquema desarrollado.

Espacio abierto para la utilización del software y la maquinaria con la cual se


trabaja.

Mesa amplia de Cómputo y Silla Ergonómica


Computadores adecuados para el correcto funcionamiento de la estructura de
nuestro programa y buena agilización del proceso del mismo.

En este punto se vuelve incierto definir un buen ambiente para el


funcionamiento o manipulación que la información que queremos que
traten, porque no se sabe de qué equipo se va tener acceso a la base de
datos.

4.3 REQUERIMIENTOS DE DESEMPEÑO GLOBAL.

Con solo saber un dato de la empresa el programa nos permitirá observar toda su
información

4.4 REQUERIMIENTOS DE DISPONIBILIDAD

HARDWARE:

 Procesador 1.3Ghz en adelante.


 Memoria RAM de 256Mb
 Espacio en disco 1G
 Que soporte una actualización

SOFTWARE.

 Windows xp en adelante
 Navegador actualizado.

4.5 REQUERIMIENTOS DE ENTRENAMIENTO.

 Capacitación al encargado de la bolsa de empleo acerca del manejo


del aplicativo
 Soporte Técnico al usuario en caso de fallas
 Capacitar el usuario encargado de digitar los datos reales,
relacionándolo con la interfaz grafica que tendrá el sistema

1. USUARIOS DEL SISTEMA

General: Persona encargada del manejo de información y el manejo de la


aplicación, enfocándose principalmente en manipulación de datos, e ingreso de
datos

Identificador Nombre Tipo Requerimient ¿Critico? Entrada Salida


o que lo utiliza
o especializa

Req1 Registrar una Necesario para Req2 Es critico por Se ingresan los Cuando el
empresa el desarrollo, será una datos a través encargado de la
es requerido parte de un bolsa de empleo
por el usuario , esencial de formulario en el ingrese la
y requerido la sistema, en el información de
por el sistema aplicación ,es cual se la empresa esta
uno de los almacenara : quedara
puntos mas registrada y
NIT
fundamental podrá
a tratar en FECHA, PERFIL visualizarla
esta base de REQUERIDO, cuando lo
datos de la NOMBRE DEL necesite.
empresa que CARGO
requiere ,SALARIO ,
egresados. NOMBRE DE LA
EMPRESA,
DIRECCION,
TELEFONO
,NOMBRE DEL
CONTACTO Y
CORREO
ELECTRONICO

Descripción: El sistema debe permitir la captura de los datos a través de un formulario en el sistema,
por medio del cual se almacenara la información en la base de datos.
Manejo de situaciones anormales:

Si los campos requeridos no se encuentran establecidos el software nos indicara el problema de no ingresar los datos
completos.

Prioridad de desarrollo: ALTA

Criterios de aceptación: Perfectamente el software deberá permitir el ingreso de datos sin ningún percance a
sabiendas que utilizo un correcto ingreso de datos, el software solo será modificable por el encargado de
la bolsa de empleo. Dejando correctamente almacenada la información en la base de datos.

Identificador Nombre Tipo Requerimient ¿Critico? Entrada Salida


o que lo utiliza
o especializa

Req2 Registro de Necesario para Req1 Es critico por Se ingresan los Cuando el
egresados el desarrollo, es datos de cada encargado de
es requerido estrictament una de los bolsa de empleo
por el e necesario egresados registre al
encargado de para el como: egresado podrá
la bolsa de desarrollo de visualizar toda
Nombre
empleo, y la aplicación su información
teléfono
requerido por ya que es lo en cualquier
el sistema que es lo que direccion, momento.
la empresa perfil, año de
desea graduación
conocer

Descripción: El sistema debe permitir que los datos ingresados en el formulario de la aplicación sean almacenados y
capturados en la base de datos.

Manejo de situaciones anormales: Si la aplicación detecta un problema de conexión o en la ejecución deberá


mostrar un mensaje de error.

No se permitirá guardar información si falta algún dato para el sistema.


Prioridad de desarrollo: ALTA

Criterios de aceptación: Perfectamente el software deberá permitir el ingreso de datos sin ningún percance a
sabiendas que utilizo un correcto ingreso de datos, el software solo será modificadopor el encargado de la bolsa de
empleo

6. DISEÑO EN MODELO ENTIDAD RELACIÓN. DEBE TENER MÍNIMO 6


ENTIDADES.

 ENTIDADES
 RELACIONES
 DIAGRAMA
 ATRIBUTOS
 REFINAR EL MODELO
Modelo Entidad-Relación

Este modelo facilitara la construcción de las diferentes entidades


con la cual estaremos trabajando en la implementación de la base
de datos, haciendo uso de sus respectivas relaciones.

RECONOCER ENTIDADES
ENTIDADES

TECNOLOGIA
EMPRESA
EGRESADO
EXPERIENCIA
CARGO
CARGO_EMPRESA

RECONOCER Y REPRESENTAR RELACIONES


DIAGRAMA ESTRUCTURA DE DATOS
RECONOCIMIENTO DE ATRIBUTOS

7. PASAR EL MODELO ENTIDAD RELACION A MODELO RELACIONAL,


IDENTIFICAR CLAVES PRIMARIAS Y FORANEAS.

MODELO RELACIONAL
8. IMPLEMENTACION EN MODELO RELACIONAL EN COMANDOS SQL.
create database BOLSA_DE_EMPLEO
use BOLSA_DE_EMPLEO

/*Creacion tabla EMPRESA*/

create table EMPRESA(


Nit int ,
Fecha datetime not null,
Perfil_Req varchar (50) not null,
Nom_Cargo varchar (50)not null,
Salario int not null,
Nom_Empresa varchar (50)not null,
Direccion_Emp varchar (50)not null,
Telefono_Emp bigint not null,
Nom_Contacto varchar (50) not null,
Correo_Elect varchar (50)not null,
primary key (Nit))

/*Creacion tabla TECNOLOGIA*/

create table TECNOLOGIA(


Cod_Tecn int,
Nom_Tecn varchar (50)not null,
primary key (Cod_Tecn))

/*Creacion tabla EGRESADO*/

create table EGRESADO(


Cod_Egresado int,
Nombre varchar (50) not null,
Telefono bigint not null,
Direccion varchar (50) not null,
Perfil varchar (50) not null,
Año_Grad int not null,
primary key (Cod_Egresado))
/*Creacion tabla EXPERIENCIA*/

create table EXPERIENCIA(


Cod_Exp int,
Tipo_Exp varchar (50) not null,
Años_Exp int not null,
Cod_Egresado int not null,
Nit int not null,
primary key (Cod_Exp),
foreign key (Cod_Egresado)references
EGRESADO(Cod_Egresado)on delete cascade on update cascade,
foreign key (Nit)references
EMPRESA(Nit)on delete cascade on update cascade)

/*Creacion tabla CARGO*/

create table CARGO(


Cod_Cargo int ,
Nom_Cargo varchar (50) not null,
Cod_Tecn int not null,
primary key (Cod_Cargo),
foreign key (Cod_Tecn) references
TECNOLOGIA(Cod_Tecn))

/*Creacion tabla CARGO_EMPRESA*/

create table CARGO_EMPRESA(


Cod_Cargo int,
Nit int,
primary key(Cod_Cargo,Nit),
foreign key (Cod_Cargo) references CARGO (Cod_Cargo)on delete cascade
on update cascade,
foreign key (Nit) references EMPRESA(Nit)on delete cascade on update
cascade)
/*insertar 10 registros tabla EMPRESA*/

insert into EMPRESA values(100,'01/10/2001','LENGUAJE


C','PROGRAMADOR',60000,'CIA','CALLE 10',1234560,'LINA','DIM@HI.COM')
insert into EMPRESA values(101,'01/11/2001','SISTEMAS DE CONTROL
PLC','AUXILIAR DE DISTRIBUCION',70000,'DISTRI','CALLE
11',1234561,'MARIA','MARIA@HI.COM')
insert into EMPRESA values(102,'01/12/2001','MONTAJES
MECANICOS','MECANICO',75000,'LOGISTAC','CALLE
12',1234562,'JUANA','JUANA10@HI.COM')
insert into EMPRESA values(103,'01/01/2001','MANEJO DE
AUTOCAD','DISEÑADOR LOGICO',80000,'TECMOVIL','CALLE
13',1234563,'SARA','SARIS@HI.COM')
insert into EMPRESA values(104,'01/02/2001','MANEJO BASE DE
DATOS','ANALISTA',90000,'LANERAS','CALLE
14',1234564,'SANDRA','SAND32@HI.COM')
insert into EMPRESA values(105,'01/03/2001','CONOCIMIENTO
ILUSTRATOR','DISEÑADOR GRAFICO',100000,'MOVILNET','CALLE
15',1234565,'LUIS','LUCHO@HI.COM')
insert into EMPRESA values(106,'01/04/2001','MANIPULACION DE
VALVULAS','AUXILIAR INDUSTRIAL',110000,'DISTRITALA','CALLE
16',1234566,'JUAN','JUANJO@HI.COM')
insert into EMPRESA values(107,'01/05/2001','LAVADA DE
INYECTORES','MECANICO AUTOMOTRIZ',120000,'INFRINET','CALLE
17',1234567,'LAURA','LAU@HI.COM')
insert into EMPRESA values(108,'01/06/2001','MANEJO DE MATERIALES
INDUSTRIALES','OPERARIO INDUSTRIAL',130000,'TARINGA','CALLE
18',1234568,'LEON','LIO@HI.COM')
insert into EMPRESA values(109,'01/07/2001','INYECCIONES
ELECTRICAS','TECNICO ELECTRICISTA',140000,'LOTESTD','CALLE
19',1234569,'SERGIO','SAMP@HI.COM')
insert into EMPRESA values(110,'01/07/2001','INYECCIONES
ELECTRICAS','TECNICO ELECTRICISTA',140000,'LOTESTD','CALLE
19',1234569,'SERGIO','SAMP@HI.COM')
insert into EMPRESA values(111,'01/07/2001','INYECCIONES
ELECTRICAS','TECNICO ELECTRICISTA',200000,'LOTESTD','CALLE
89',1234569,'RICARDO','SAMP@HI.COM')
insert into EMPRESA values(112,'01/07/2001','INYECCIONES
ELECTRICAS','TECNICO ELECTRICISTA',250000,'LOTESTD','CALLE
89',1234569,'LUIZA','SAMP@HI.COM')
insert into EMPRESA values(113,'01/07/2001','INYECCIONES
ELECTRICAS','TECNICO ELECTRICISTA',80000,'LOTESTD','CALLE
89',1234569,'SOFIA','SAMP@HI.COM')
insert into EMPRESA values(114,'01/07/2001','INYECCIONES
ELECTRICAS','TECNICO ELECTRICISTA',90000,'LOTESTD','CALLE
89',1234569,'CAROLINA','SAMP@HI.COM')

/*insertar 10 registros tabla TECNOLOGIA*/

insert into TECNOLOGIA values(10,'INFORMATICA')


insert into TECNOLOGIA values(11,'ELECTRONICA')
insert into TECNOLOGIA values(12,'MECATRONICA')
insert into TECNOLOGIA values(13,'ELECTRICA')
insert into TECNOLOGIA values(14,'DISEÑO GRAFICO')
insert into TECNOLOGIA values(15,'DISEÑO TEXTIL')
insert into TECNOLOGIA values(16,'BIOELECTRONICA')
insert into TECNOLOGIA values(17,'MANTENIMIENTO DE AERONAVES')
insert into TECNOLOGIA values(18,'PRODUCCION INDUSTRIAL')
insert into TECNOLOGIA values(19,'ELECTROMECANICA')
insert into TECNOLOGIA values(20,'ELECTROMECANICA')
insert into TECNOLOGIA values(21,'ELECTROMECANICA')
insert into TECNOLOGIA values(22,'MECATRONICA')
insert into TECNOLOGIA values(23,'MECATRONICA')
insert into TECNOLOGIA values(24,'MECATRONICA')
insert into TECNOLOGIA values(25,'MECATRONICA')

/*insertar 10 registros tabla EGRESADO*/

insert into EGRESADO values(200,'MONICA',9785740,'CALLE 30','LENGUAJES


DE PROGRAMACION',1990)
insert into EGRESADO values(201,'MIGUEL',9785741,'CALLE
31','INSTALACION DE SOFTWARE',1991)
insert into EGRESADO values(202,'CARLA',9785742,'CALLE 32','FORMATEO
DE PC',1992)
insert into EGRESADO values(203,'JULIANA',9785743,'CALLE
33','DISEÑADOR DE INTERIORES',1993)
insert into EGRESADO values(204,'DANIELA',9785744,'CALLE
34','ENSAMBLADOR DE DISPOSITIVOS ELECTRONICOS',1994)
insert into EGRESADO values(205,'SUSANA',9785745,'CALLE
35','ESPECIALISTA EN MANTENIMIENTO MECANICO',1995)
insert into EGRESADO values(206,'JOHANA',9785746,'CALLE 36','ANALISTA
CIENTIFICO',1996)
insert into EGRESADO values(207,'LEANDRO',9785747,'CALLE
37','INSTRUCTOR DE EQUIPOS NEUMATICOS',1997)
insert into EGRESADO values(208,'SANTIAGO',9785748,'CALLE
38','INSTALADOR DE EQUIPOS A GAS',1998)
insert into EGRESADO values(209,'ELIANA',9785749,'CALLE 39','REPARADOR
ACUSTICO',1999)
insert into EGRESADO values(210,'ELINA',9785749,'CALLE 39','REPARADOR
ACUSTICO',1993)
insert into EGRESADO values(211,'ELENA',9785749,'CALLE 39','REPARADOR
ACUSTICO',1997)

/*tabla EXPERIENCIA*/

insert into EXPERIENCIA values(300,'VEHICULOS AUTOMOTORES',1,200,100)


insert into EXPERIENCIA values(301,'CRIMINALISTICA',2,201,101)
insert into EXPERIENCIA values(302,'CUERPO ANALITICO',5,202,102)
insert into EXPERIENCIA values(303,'ESTUDIO COMPETITIVO',6,203,103)
insert into EXPERIENCIA values(304,'CONMUTACION
SECUENCIAL',14,204,104)
insert into EXPERIENCIA values(305,'CONTADORES PRIMARIOS',3,205,105)
insert into EXPERIENCIA values(306,'CALZADA HORIZONTAL',7,206,106)
insert into EXPERIENCIA values(307,'REACCIONES QUIMICAS',9,207,107)
insert into EXPERIENCIA values(308,'FLUIDOS ANATOMICOS',4,208,108)
insert into EXPERIENCIA values(309,'RESISTENCIAS DE
MATERIALES',8,209,109)
insert into EXPERIENCIA values(310,'RESISTENCIAS DE
COLUMNAS',8,209,108)
insert into EXPERIENCIA values(311,'RESISTENCIAS DE
COLUMNAS',8,209,107)
insert into EXPERIENCIA values(312,'RESISTENCIAS DE
COLUMNAS',8,209,106)
insert into EXPERIENCIA values(313,'RESISTENCIAS DE
COLUMNAS',8,209,105)
insert into EXPERIENCIA values(314,'FLUIDOS ANATOMICOS',8,209,106)
insert into EXPERIENCIA values(315,'FLUIDOS ANATOMICOS',8,205,106)
insert into EXPERIENCIA values(316,'VEHICULOS AUTOMOTORES',8,205,113)
insert into EXPERIENCIA values(317,'VEHICULOS AUTOMOTORES',8,200,114)

/*tabla CARGO*/
insert into CARGO values(400,'CONTADOR',10)
insert into CARGO values(401,'MECANICO1',11)
insert into CARGO values(402,'MECANICO2',12)
insert into CARGO values(403,'ELECTRICISTA',13)
insert into CARGO values(404,'SUPERVISOR',14)
insert into CARGO values(405,'OPERARIO1',15)
insert into CARGO values(406,'OPERARIO2',16)
insert into CARGO values(407,'INDUCTOR DE MAQUINAS',17)
insert into CARGO values(408,'INGENIERO DE OBRA',18)
insert into CARGO values(409,'ANALISTA SECUNDARIO',19)
insert into CARGO values(410,'SUPERVISOR',19)
insert into CARGO values(411,'SUPERVISOR',19)
insert into CARGO values(412,'SUPERVISOR',22)
insert into CARGO values(413,'SUPERVISOR',23)
insert into CARGO values(414,'SUPERVISOR',24)
insert into CARGO values(415,'SUPERVISOR',25)

/*tabla CARGO_EMPRESA*/

insert into CARGO_EMPRESA values(400,100)


insert into CARGO_EMPRESA values(401,101)
insert into CARGO_EMPRESA values(402,102)
insert into CARGO_EMPRESA values(403,103)
insert into CARGO_EMPRESA values(404,104)
insert into CARGO_EMPRESA values(405,105)
insert into CARGO_EMPRESA values(406,106)
insert into CARGO_EMPRESA values(407,107)
insert into CARGO_EMPRESA values(408,108)
insert into CARGO_EMPRESA values(409,109)
insert into CARGO_EMPRESA values(400,109)
insert into CARGO_EMPRESA values(413,110)
insert into CARGO_EMPRESA values(412,110)
insert into CARGO_EMPRESA values(415,112)

9. MANIPULACION DE LA BASE DE DATOS

Una con group by y having en una sola tabla.


/* Mostrar el Nit de las EMPRESAS con mas de un Experiencia */

select Nit, count(*) as Cantidad


from EXPERIENCIA
group by Nit
having count(*) > 1

Una con group by y having con dos o más tablas.


/* Mostar los datos de los Egresados con un Total de Años de
experiencia mayorque 10 */

select EXPERIENCIA.Cod_Egresado, Nombre, Telefono ,Direccion, Perfil,


Año_Grad
from EGRESADO inner join EXPERIENCIA
on EGRESADO.Cod_Egresado = EXPERIENCIA.Cod_Egresado
group by EXPERIENCIA.Cod_Egresado,Nombre, Telefono ,Direccion, Perfil,
Año_Grad
having SUM (Años_Exp ) > 10

Una subconsulta de una sola tabla.


/* mostrar los codigos de los egresados y su nombre con un año de
graduacion mayor a 1995 */

select Cod_Egresado,Nombre
from EGRESADO
where Cod_Egresado IN (select Cod_Egresado from EGRESADO where
Año_Grad >1995)

Una subconsulta de tres niveles.


/* Mostar los datos de los EMPRESAS con un salario mayor que 100000
y con un tipo de experiencia en fluidos anatomicos y que el egresado
tenga un año de graduacion entre 1993 y 1996 */

SELECT *
from EMPRESA
where Salario > 100000 and
Nit in( select Nit
from EXPERIENCIA
Where (Tipo_Exp ='FLUIDOS ANATOMICOS' and Cod_Egresado
in(select Cod_Egresado
from EGRESADO
where Año_Grad between 1993 and 1996)))

Una diferencia e intersección con in y otra con not in.

not in
/* Mostar los datos de las EMPRESAS con un salario mayor que 80000 y
no tienen un tipo de experiencia de contadores primarios y
criminalistica */

select *
from EMPRESA
where Salario > 80000 and Nit not in ( select Nit
from EXPERIENCIA
where Tipo_Exp in ('CONTADORES
PRIMARIOS' ,'CRIMINALISTICA'))

in
/* Mostrar los datos de los EGRESADOS con Años de graduacion este
entre 1992 y 1994 y experiencia mayor a 5 */
select *
from EGRESADO
where Año_Grad between 1992 and 1994 and Cod_Egresado in ( select
Cod_Egresado
from EXPERIENCIA
where Años_Exp > 5)

Una diferencia e intersección con exists y otra con not exists.


EXISTS

/* Mostrar los datos de los egresados con año de graduacion menor a


1995 y que tienen mas de 6 años de experiencia */

select *
from EGRESADO
where Año_Grad <1995 and
Exists ( select *
from EXPERIENCIA where Años_Exp > 6 and
EGRESADO.Cod_Egresado= EXPERIENCIA.Cod_Egresado)

NOT EXISTS

/* mostrar los datos de los egresados con un año de graduacion mayor a


1996 y que no tengan experiencia*/

select *
from EGRESADO
where Año_Grad >1996 and not exists ( select* from EXPERIENCIA
where EGRESADO.Cod_Egresado = EXPERIENCIA.Cod_Egresado)

Una con más de dos tablas y con un cálculo aritmético en el select.


(+, -, *, /).
/* Mostrar el Nombre y al Año de graduacion de los egresados que tiene
un tipo de experiencia en vehiculos automotores y mostrar el total de
su salario mayor que 70000 */

select EGRESADO .Nombre , EGRESADO .Año_Grad, SUM (Salario) as Total


from EGRESADO inner join EXPERIENCIA
on EGRESADO .Cod_Egresado = EXPERIENCIA .Cod_Egresado inner join
EMPRESA
on EXPERIENCIA .Nit = EMPRESA .Nit
where EXPERIENCIA .Tipo_Exp = 'VEHICULOS AUTOMOTORES'
group by EGRESADO .Nombre , EGRESADO .Año_Grad
having SUM( Salario ) > 70000
Una consulta con las 6 cláusulas.
/* Mostrar las direcciones de las EMPRESAS y Nombres de contacto de
la empresa que tengan un nombre de cargo supervisor o tiene un nombre
de tecnologia mecatronica.
mostrar en forma ascendente las direcciones de las empresas, con un
total de salario mayor que 90000 */

select EMPRESA.Direccion_Emp, EMPRESA .Nom_Contacto, SUM (Salario )


as Total
from EMPRESA inner join CARGO_EMPRESA
on EMPRESA .Nit = CARGO_EMPRESA .Nit inner join CARGO
on CARGO_EMPRESA .Cod_Cargo = CARGO .Cod_Cargo inner join TECNOLOGIA
on CARGO .Cod_Tecn = TECNOLOGIA .Cod_Tecn
where CARGO.Nom_Cargo = 'SUPERVISOR' OR Nom_Tecn = 'MECATRONICA'
group by EMPRESA.Direccion_Emp, EMPRESA .Nom_Contacto
having SUM (Salario )> 90000
order by EMPRESA .Direccion_Emp

10. OPERACIONES DML COMO:

INSERTAR

insert into EMPRESA values(700,'03/11/2000','LENGUAJE


C#','PROGRAMADOR',90000,'PROSTAR','CALLE
50',123465,'DIEGO','FDERT@HI.COM')

BORRAR

/* Borrar las experiencias con un año de experiencia mayor que 7 */


Delete from EXPERIENCIA
Where Años_Exp > 7

/* Borrar los nombres de los egresados Juliana, Leandro, Santiago */


Delete from EGRESADO
Where Cod_Egresado IN (Select Cod_Egresado
From EGRESADO
Where Nombre IN
('Juliana','Leandro','Santiago'))
ACTUALIZAR

/* Actualizar los años de experiencia en 2 para los egresados Daniela,


Johana */
Update EXPERIENCIA
Set Años_Exp = Años_Exp + 2
Where Cod_Egresado IN (select Cod_Egresado
From EGRESADO
Where Nombre IN ('Daniela','Johana'))

11. CREAR DOS REGLAS DE VALIDACION PARA DOS CAMPOS

/* El campo Nom_Tecn solo debe permitir las tecnologías Informática,


Electrónica, Mecatronica, Eléctrica, Diseño Grafico, Diseño Textil,
Biolectronica, Mantenimiento de Aeronaves, Producción Industrial o
Electromecánica */
check (Nom_Tecn ='INFORMATICA'or Nom_Tecn =' ELECTRONICA 'or Nom_Tecn
=' MECATRONICA ' or Nom_Tecn =' ELECTRICA ' or Nom_Tecn =' DISEÑO
GRAFICO' or Nom_Tecn =' DISEÑO TEXTIL' or Nom_Tecn =' BIOELECTRONICA' or
Nom_Tecn =' MANTENIMIENTO DE AERONAVES' or Nom_Tecn ='PRODUCCION
INDUSTRIAL' or Nom_Tecn = ELECTROMECANICA')

/* El campo salario debe ser mayor que 50000 */


check(Salario >= 50000)

You might also like