Está en la página 1de 5

Diseo y Administracin de Datos

Ejercicios Prcticos

Ao 2012

SQL
Ejercicios:
1) Determinar las instrucciones Sql necesarias para:
a) Crear la base de datos Facena
b) Crear la tabla DAD, con los atributos LU, Apellido y Nombre, Cd. Localidad, Cd.
de Carrera y T.E
c) Crear un ndice en base al atributo LU como clave primaria, ascendente
d) Crear la tabla Localidad con los atributos Cd. Localidad (clave primaria), Nombre
localidad y Cd. Postal
e) Crear la tabla Carrera, con los atributos
Cd. Carrera (clave primaria) y
Descripcin
2) Respecto de la tablas creadas anteriormente, determine las sentencias Sql necesarias
para:
a) Incorporar los siguientes datos a las tablas:
Dad
LU
Apellido y Nombre
Cd Localidad
Cd Carrera
T.E.
21201
Prez Jorge
10
39025
Almirn Mara
9
40502
Franco Miguel
15
Localidad
Cd. Loc
Nombre
Cd Postal
9
Alvear
3435
10
Bella Vista
3450
11
Empedrado
3470
Carrera
Cd. Carrera
Descripcin
11
Bioqumica
15
Lic. Sistemas Informacin

11
15
11

20330
19735
21545

3) Determine las sentencias sql para:


a) Respecto de la tabla DAD:
i. Crear un ndice en base a los atributos Cd. Localidad y Cd. de Carrera,
ascendente
ii. Modificar el T.E. del alumno 40502 por el siguiente dato 56543
iii. Eliminar los alumnos de cd. de carrera 11
b) Respecto de la tabla Carrera:
i. Modificar la estructura, agregando el atributo duracin (aos)
ii. Cambiar el tamao del atributo Descripcin a 40 caracteres
c) Obtener una consulta con los siguientes datos: LU, Apellido y Nombre, Nombre
Localidad y Descripcin de Carrera
i. Cuantos alumnos hay de la carrera Biologa
ii. LU, Apellido-Nombre, Nombre Localidad y Descripcin de la Carrera,
ordenado por LU y Apellido y Nombre
4) De los
NEmp
01
09
05
03
08
02
06

siguientes datos de los empleados de una empresa:


Legajo
Apellido
Sueldo
Descuentos
Cargo
330922
Zubieta
915,78
203,30
22
399022
Gmez
889,12
197,55
11
115203
Azcona
998,85
215,15
11
515489
Ramrez
750,12
180,45
33
487555
Gonzlez
600,00
150,12
33
228504
Escobar
540,11
140,89
11
529875
Zamudio
975,58
216,13
33

Func.
450
550
650
550
450
750
550

CUIL
9010
9008
9006
9004
9002
9001
9003

a) Determine las sentencias SQL necesarias para obtener las siguientes consultas,
donde se muestren solamente los atributos NEmp, Apellido, Sueldo, Descuentos,
Cargo y Funcin, odenados por NEmp y Apellido, de acuerdo a las siguientes
condiciones:
- Solo los empleados con sueldo menor a $751,00
- Todos los empleados ordenado en forma descendente por
Sueldo
- Los primeros 7 empleados ordenados por apellido
- Solo los empleados con Funcin=550
b) Modificar todos los empleados que tengan Cargo=22 por el nuevo Cargo=31
c) Poner en 0 (ceros) el atributo Sueldo de toda la tabla
5) Escriba las sentencias necesarias para:
a) Eliminar las ndices y tablas creadas en el ejercicio 1

Resolucin del Prctico de Sentencias SQL


1) Determinar las instrucciones Sql necesarias para:
a) Crear la base de datos Facena
Create Database Facena
b) Crear la tabla DAD, con los atributos LU, Apellido y Nombre, Cd. Localidad, Cd.
de Carrera y T.E
Create table DAD
(
Lu
ApeyNom
CLoc
cCarr
Telef
Primary Key

int
not null,
varchar (30),
int
not null,
int
not null,
int,
(Lu))

c) Crear un ndice en base al atributo LU como clave primaria, ascendente


Create index Alumnos on Dad (Lu Asc)
d) Crear la tabla Localidad con los atributos Cd. Localidad (clave primaria), Nombre
localidad y Cd. Postal
Create table Localidad
(
Cloc
NomLoc
CPostal
Primary Key

int
not null,
varchar (30),
int
not null,
(Cloc))

e) Crear la tabla Carrera, con los atributos


Descripcin

Cd. Carrera (clave primaria) y

Create table Carrera


(
CCarr
int
not null,
Descrip
varchar (30),
Primary Key (CCarr))
2) Respecto de la tablas creadas anteriormente, determine las sentencias Sql necesarias
para:
a) Incorporar los siguientes datos a las tablas:
Dad
LU

Apellido y Nombre

Cd Localidad

Cd Carrera

T.E.

21201
39025
40502

Prez Jorge
Almirn Mara
Franco Miguel

10
9
15

11
15
11

20330
19735
21545

Insert into Dad


Values
(21201,Prez Jorge,10,11,20330),
(39025,Almirn Mara,9,15,19735),
(40502,Franco Miguel,15,11,21545)
Localidad
Cd. Loc
9
10
11

Nombre
Alvear
Bella Vista
Empedrado

Cd Postal
3435
3450
3470

Carrera
Cd. Carrera
11

Descripcin
Bioqumica

15

Lic. Sistemas Informacin

3) Determine las sentencias sql para:


a) Respecto de la tabla DAD:
i. Crear un ndice en base a los atributos Cd. Localidad y Cd. de Carrera,
ascendente
Create index codigos on Dad (cLoc Asc, cCarr Asc)
ii. Modificar el T.E. del alumno 40502 por el siguiente dato 56543
Update Dad
Set Telef = 56543
Where Lu=40502
iii. Eliminar los alumnos de cd. de carrera 11
Delete from Dad
Where cCarr=11
b) Respecto de la tabla Carrera:
iv. Modificar la estructura, agregando el atributo duracin (aos)
Alter table Carrera
Add duracion int
v. Cambiar el tamao del atributo Descripcin a 40 caracteres
Alter table Carrera
Alter column Descripcion varchar(40)
c) Obtener una consulta con los siguientes datos: LU, Apellido y Nombre, Nombre
Localidad y Descripcin de Carrera
vi. Cuantos alumnos hay de la carrera Biologa
Select x.Lu, x.Apeynom, y.Descrip, z.Nomloc
From Dad x, Carrera y, Localidad z
Where y.Descrip = Biologia
And x.cCarr = y.cCarr
And
x.cLoc = z.CLoc
vii. LU, Apellido-Nombre, Nombre Localidad y Descripcin de la Carrera,
ordenado por LU y Apellido y Nombre
Select x.Lu, x.Apeynom, y.Descrip, z.Nomloc
From Dad x, Carrera y, Localidad z
Where x.cCarr = y.cCarr
And
x.cLoc = z.CLoc
Order By x.Lu, x.Apeynom
4) De los siguientes datos de los empleados de una empresa:
NEmp
01
09
05
03
08
02
06

Legajo
330922
399022
115203
515489
487555
228504
529875

Apellido
Zubieta
Gmez
Azcona
Ramrez
Gonzlez
Escobar
Zamudio

Sueldo
915,78
889,12
998,85
750,12
600,00
540,11
975,58

Descuentos
203,30
197,55
215,15
180,45
150,12
140,89
216,13

Cargo
22
11
11
33
33
11
33

Func.
450
550
650
550
450
750
550

CUIL
9010
9008
9006
9004
9002
9001
9003

a) Determine las sentencias SQL necesarias para obtener las siguientes consultas,
donde se muestren solamente los atributos NEmp, Apellido, Sueldo, Descuentos,
Cargo y Funcin, ordenados por NEmp y Apellido, de acuerdo a las siguientes
condiciones:
- Solo los empleados con sueldo menor a $751,00
Select campos
From Empleados
Where Sueldo < 751
-

Todos los empleados ordenado en forma descendente por


Sueldo
Select campos
From Empleados
Order by Sueldo Asc

Los primeros 7 empleados ordenados por apellido


Select campos
From Empleados
Where count(*) = 7
Order By Apellido

Solo los empleados con Funcin=550


Select campos
From Empleados
Where Funcion = 550

b) Modificar todos los empleados que tengan Cargo=22 por el nuevo Cargo=31
Update Empleados
Set cargo = 31
Where cargo=22
c) Poner en 0 (ceros) el atributo Sueldo de toda la tabla
Update Empleados
Set Sueldo = 0
5) Escriba las sentencias necesarias para:
a) Eliminar las ndices y tablas creadas en el ejercicio 1
Drop table Dad
Drop table Localidad, Carrera

También podría gustarte