Está en la página 1de 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 1. Corredora de propiedades


a) A partir del siguiente MER desarrolle el Modelo Relacional respectivo.
ARRENDATARIO
rut_arr
nomb_arr
apell_arr

tiene_1

ARRIENDO
deuda

tiene_2

CASA
id_casa
nro_cas a
calle_casa
com una_cas a

propietario

DUENO
rut_du
nomb_du
apell_du
celu_du

b) Crear el modelo relacional usando instrucciones en SQL


c) Realizar las siguientes instrucciones sobre el modelo:
- Modificar la tabla ARRIENDO agregando el campo fecha
- Modificar la tabla ARRENDATARIO modificando el tipo de dato de nombre y
apellido por un varchar de largo 25
d) Cambiar el nombre de la tabla CASA por PROPIEDAD
e) Insertar los siguientes datos en las tablas creadas:
El arrendatario rut: 111-1 Nombre completo: Juan Araya tiene una deuda de 0
en el arriendo de la casa con los siguientes datos: id_casa: 234, nro_casa:
1356, calle: Rosas, comuna: Stgo Centro. El dueo de la casa es rut: 987-6,
nombre completo: Claudia Hernndez
El arrendatario rut: 222-2 Nombre completo: Leila Jadue tiene una deuda de
100000 en el arriendo de la casa con los siguientes datos: id_casa: 235,
nro_casa: 234, calle: Mc Iver, comuna: Stgo Centro. El dueo de la casa es rut:
987-6, nombre completo: Claudia Hernndez
El arrendatario rut: 222-2 Nombre completo: Leila Jadue tiene una deuda de 0
en el arriendo de la casa con los siguientes datos: id_casa: 237, nro_casa:
1221, calle: Puente, comuna: Stgo Centro. El dueo de la casa es rut: 765-4,
nombre completo: Catalina Rosales
El arrendatario rut: 333-3 Nombre completo: Adolfo Riquelme tiene una deuda
de 550000 en el arriendo de la casa con los siguientes datos: id_casa: 239,
nro_casa: 156, calle: San Martin, comuna: Stgo Centro. El dueo de la casa es
rut: 765-4, nombre completo: Catalina Rosales
f) Realizar las siguientes instrucciones sobre el modelo:
- Seleccionar todas las propiedades con sus datos
- Seleccionar todos los dueos de las casas
Pgina 1 de 3

Diseo de Base de Datos


Primavera 2016
Carolina Ehrmantraut C.

Seleccionar slo los nombres de los arrendatarios


Seleccionar slo las comunas de las casas ordenadas alfabticamente
(ascendente)
Seleccionar todas las deudas ordenadas por valor (deuda) de mayor a menor
Seleccionar nombre y apellido de dueos ordenados por rut de mayor a menor
Seleccionar la propiedad (casa) cuyo cdigo (id_casa) es 237
Seleccionar las editoriales cuyo pas es Espaa
Seleccionar los dueos de casa cuyo nombre sea Claudia
Seleccionar todas las propiedades cuyo dueo posea el rut: 765-4
Seleccionar todas las deudas cuyo monto (deuda) este en el rango [150000,
700000]

Solucin:
RUT_ARR = RUT_ARR

ARRIENDO
ID_CASA
RUT_ARR
DEUDA

int
char(10)
int

DUENO
ID_CASA = ID_CASA

CASA
ID_CASA
RUT_DU
NRO_CASA
CALLE_CASA
COMUNA_CASA

ARRENDATARIO
RUT_ARR
NOMB_ARR
APELL_ARR

RUT_DU = RUT_DU

char(10)
char(20)
char(20)

a)

RUT_DU
NOMB_DU
APELL_DU
CELU_DU

char(10)
char(20)
char(20)
char(12)

int
char(10)
int
char(20)
char(20)

b) Crear MR en SQL
create table ARRENDATARIO (
RUT_ARR

char(10)

not null,

NOMB_ARR

char(20)

not null,

APELL_ARR

char(20)

not null,

constraint PK_ARRENDATARIO primary key (RUT_ARR)


)
create table DUENO (
RUT_DU

char(10)

not null,

NOMB_DU

char(20)

not null,

APELL_DU

char(20)

not null,

CELU_DU

char(12)

null,

constraint PK_DUENO primary key (RUT_DU)


)
create table CASA
(
ID_CASA

int

RUT_DU

char(10)

NRO_CASA

int

CALLE_CASA char(20)

not null,
not null,
not null,
not null,
Pgina 2 de 3

Diseo de Base de Datos


Primavera 2016
Carolina Ehrmantraut C.

COMUNA_CASA char(20)

not null,

constraint PK_CASA primary key (ID_CASA)


)
create table ARRIENDO (
ID_CASA

int

RUT_ARR
DEUDA

not null,

char(10)
int

not null,
not null,

constraint PK_ARRIENDO primary key (ID_CASA, RUT_ARR)


)
alter table CASA
add constraint FK_CASA_PROPIETAR_DUENO foreign key (RUT_DU)
references DUENO (RUT_DU)
alter table ARRIENDO
add constraint FK_ARRIENDO_TIENE_1_ARRENDAT foreign key (RUT_ARR)
references ARRENDATARIO (RUT_ARR)
alter table ARRIENDO
add constraint FK_ARRIENDO_RELATION__CASA foreign key (ID_CASA)
references CASA (ID_CASA)

Pgina 3 de 3