Вы находитесь на странице: 1из 3

Diseo de Base de Datos

Primavera 2016
Carolina Ehrmantraut C.

Ejercicios Unidad 3
Para cada caso construya el modelo relacional respectivo, crear el modelo con SQL y
luego generar las instrucciones de manipulacin de datos solicitadas:

Caso 2. Asignaturas y sus secciones


a) A partir del siguiente MER desarrolle el Modelo Relacional respectivo.

ASIGNATURA
cod_asig
nomb_asig
area

pertenece

SECCION
cod_secc
semes_secc
ao_secc

Solucin:
ASIGNATURA
COD_ASIG
integer
NOMB_ASIG
varchar(50)
AREA
varchar(30)

SECCION
COD_ASIG
integer
COD_ASIG = COD_ASIG COD_SECC
varchar(4)
SEMES_SECC
varchar(9)
ANO_SECC
integer

b) Crear el modelo relacional usando instrucciones en SQL


create table ASIGNATURA
(
COD_ASIG integer
not null,
NOMB_ASIG varchar(50)
not null,
AREA
varchar(30)
null ,
constraint PK_ASIGNATURA primary key (COD_ASIG)
)
create table SECCION
(
COD_ASIG integer
not null,
COD_SECC varchar(4)
not null,
SEMES_SECC varchar(9)
not null,
ANO_SECC integer
not null,
constraint PK_SECCION primary key (COD_ASIG, COD_SECC)
)
alter table SECCION
add constraint FK_SECCION_PERTENECE_ASIGNATU foreign key (COD_ASIG)
references ASIGNATURA (COD_ASIG)

Pgina 1 de 3

Diseo de Base de Datos


Primavera 2016
Carolina Ehrmantraut C.

c) Realizar las siguientes instrucciones sobre el modelo. Escriba el cdigo en cada


situacin.
- Agregar el campo nombre_prof (nombre del profesor) a la tabla SECCION,
cuyo tipo es varchar de largo 40 y no admite valores nulos.
- Cambiar el tipo de dato de rea en la tabla asignatura por varchar de largo
15.
- Eliminar la relacin entre las dos tablas.
- Crear la relacin nuevamente entre las dos tablas.
- Cambiar el nombre de la tabla SECCION por SECC
Insertar correctamente los siguientes datos en las tablas creadas. Las asignaturas y
sus secciones a insertar son:
Cdigo
de
asignat
ura

Nombre
de
asignatu
ra

rea de
asignatu
ra

Cdigo
de
seccin

semestr
e

Nombre
profesor

1111

Matemti
ca 1

Matemti
ca

m111

Otoo

2
0
1
5

David Pea

1111

Matemti
ca 1

Matemti
ca

m112

Otoo

2
0
1
5

Sonia
Vergara

1112

Fsica 1

Ciencias

fs11

Otoo

2
0
1
5

David Pea

1113

Qumica

Ciencias

qu23

Primave
ra

2
0
1
4

Lisa Cortez

1112

Fsica 1

Null

fs11

Otoo

2
0
1
5

Pedro Araya

1115

Algoritmi
a

Null

ag66

Primave
ra

2
0
1
4

Null

d) A continuacin, codifique las siguientes instrucciones sobre el modelo, considerando


el orden de ejecucin:
- Seleccionar todas las asignaturas
- Seleccionar todas las secciones
- Seleccionar slo los nombres de las asignaturas
- Seleccionar slo las reas y nombres de las asignaturas
Pgina 2 de 3

Diseo de Base de Datos


Primavera 2016
Carolina Ehrmantraut C.

Seleccionar todas las asignaturas ordenadas descendentemente por cdigo


Seleccionar nombre y rea de las asignaturas ordenadas por rea
alfabticamente
Seleccionar todas las secciones ordenadas por profesor alfabticamente
Seleccionar todas las secciones del ao 2014, ordenadas por cdigo de seccin
de menor a mayor
Seleccionar todas las secciones del profesor David Pea
Seleccionar todas las secciones del rea Ciencias del ao 2015
Seleccionar todas las secciones que hayan sido dictadas en semestre Primavera
del ao 2013
Desplegar todas las secciones cuya rea tenga valor NULL
Agregar en la asignatura con cdigo 1112 el valor al rea = Ciencias
Actualizar todas las secciones que posean valor NULL en el campo profesor y
cambiarlo por Mauricio Labra
Reemplazar en la tabla SECCION al profesor David Pea por Lorenzo Torres
Seleccionar todas las secciones que se dictaron entre los aos [2012, 2015]
Es posible eliminar todas las secciones dictadas en Primavera?
Resuelva/explique
Es posible eliminar la asignatura cdigo 1111? Resuelva/explique
Eliminar las tablas.

Pgina 3 de 3

Вам также может понравиться