Está en la página 1de 2

PRCTICA NO.

1 DE SQL
a. Crear la base de datos: compania
b. Crear las siguientes tablas, sin omitir la definicin de llaves primarias y forneas: (Utilizar
CREATE TABLE, PRIMARY KEY, FOREIGN KEY y en caso necesario ALTER TABLE)
(Entregar el archivo tablas.sql con las instrucciones correspondientes para crear las tablas)

Tabla empleado (NSS CHAR(9) NOT NULL, NOMBREP VARCHAR(15) NOT NULL, INIC CHAR(1),
APELLIDO VARCHAR(15) NOT NULL, FECHAN DATE, DIRECCION VARCHAR(30), SEXO
CHAR(1), SALARIO DECIMAL(10,2), NSSSUPER CHAR(9), ND INTEGER NOT NULL)
NSS=Nmero de seguridad social, equivalente a afiliacin al seguro social.
INIC= Inicial del segundo nombre
NSSSUPER=NSS del supervisor o jefe inmediato
Restriccin: SEXO= El sexo del empleado slo puede ser M o F.
Tabla departamento (NOMBRED VARCHAR(15) NOT NULL, NUMEROD INT NOT NULL, NSSGTE
CHAR(9) NOT NULL, FECHAINICGTE DATE)
NUMEROD=Nmero de departamento
NSSGTE=NSS del gerente del departamento
FECHAINICGTE=Fecha en que un gerente toma a cargo un departamento
Tabla lugares_deptos (NUMEROD INTEGER NOT NULL, LUGARD VARCHAR(15) NOT NULL)
NUMEROD=Nmero de departamento
LUGARD=Lugar en el que se encuentra un departamento
Restriccin: LUGARD= El LUGARD slo puede ser MEXICO ,ESTADOS UNIDOS,
'BRASIL'.
Tabla proyecto (NOMBREPR VARCHAR(15) NOT NULL, NUMEROP INTEGER NOT NULL,
LUGARP VARCHAR(15), NUMD INTEGER NOT NULL)
NUMEROP= Nmero de proyecto
LUGARP=Lugar en que se desarrolla un proyecto.

Tabla trabaja_en (NSSE CHAR(9) NOT NULL, NUMP INTEGER NOT NULL, HORAS DECIMAL(3,1)
NOT NULL)
NSSE=Nmero de seguridad social del empleado
Tabla dependiente (NSSE CHAR(9) NOT NULL, NOMBRE_DEPENDIENTE VARCHAR(15) NOT
NULL, SEXO CHAR(1), FECHAN DATE, PARENTESCO VARCHAR(8))
FECHAN=Fecha de nacimiento del dependiente del empleado
c) Poblar cada tabla con al menos 5 filas. Los datos debern ser lgicos y coherentes, con la
suficiente consistencia para resolver las consultas planteadas
d) Escribir las instrucciones (DML/DDL) SQL necesarias para eliminar todos los datos en cada
una de las tablas, es decir, despus de ejecutar las sentencias SQL correspondientes todas
las tablas deberan quedar vacas. No omitir que el esquema de la base de datos deber
permanecer intacta.
e) Escribir las sentencias (DDL) SQL requeridas para eliminar todas las tablas creadas con
anterioridad.
Entregar el archivo insertar_eliminar.sql con las instrucciones correspondientes al inciso c,d
y e. (10 puntos)
f) Resolver las siguientes consultas (Entregar el archivo consultar.sql con las instrucciones
correspondientes, 80 puntos):
1. Obtener la fecha de nacimiento y la direccin del empleado cuyo nombre es Jos B.
Silva.
2. Obtener el nombre y la direccin de todos los empleados que trabajan para el
departamento Investigacin.
3. Para cada proyecto ubicado en Santiago, obtener una lista con el nmero del
proyecto, el nmero de departamento que controla dicho proyecto, el nombre, la
direccin, y la fecha de nacimiento del gerente que controla dicho departamento.
4. Para cada empleado, obtener su nombre y apellido, as como el nombre y apellido de su
supervisor inmediato.
5. Preparar una lista con todos los nmeros de los proyectos en los que participa un
empleado de apellido Silva, sea como trabajador o como gerente del departamento
que controla el proyecto.
6. Obtener el nombre de todos los empleados que tienen un dependiente con el mismo
nombre y sexo que el empleado.
7. Buscar los nombres de los empleados que trabajan en todos los proyectos controlados
por el departamento nmero 5.
8. Obtener los nombres de los empleados que no tienen dependientes.

También podría gustarte