0% encontró este documento útil (0 votos)
14 vistas15 páginas

Actividad N°5 - Tecnología en Base de Datos

Cargado por

María Valdés
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
14 vistas15 páginas

Actividad N°5 - Tecnología en Base de Datos

Cargado por

María Valdés
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 15

Actividad N°5

1. Primero nos conectamos con un usuario ya creado y con permisos de


administrador para luego crear un usuario llamado Auto_Renta para crear la
nueva base de datos y correr los scripts proporcionados.
2. Una vez creado el usuario, nos conectaremos a él y crearemos un TableSpace y
Datafile llamado AUTO_RENTA en el directorio correspondiente que utiliza la
base de datos.
3. Ahora, copiaremos y pegaremos el script proporcionado por el profesor, en mi
caso modifiqué un poco el código añadiendo líneas de comentario para subdividir
las secciones y tener un mayor orden y comprensión. Además, algunas
instrucciones las coloqué en mayúsculas para poderlas encontrar mejor.
Tabla Marcas

Tabla Modelos

Tabla Autos

Tabla Clientes
Tabla Alquiler

Inserción de datos en la tabla marcas

Inserción de datos en la tabla modelos


Inserción de datos en la tabla autos

Nota: El estatus tuvo que cambiarse para que el check funcionase con los valores
pedidos (D, A, X, F).

Inserción de datos en la tabla clientes


Inserción de datos en la tabla alquiler

Confirmación de los cambios

Confirmación de la creación de las tablas

4. Agregar un ‘check conditions’ a la tabla autos en el que se indique que solo se


permite los valores (‘D’, ‘X’, ‘A’, ‘F’) sobre el campo estatus. Lo cual indica
Disponible, Dañado, Alquilado, Fuera de Servicio.

Para comprobar su funcionamiento podemos ir a la tabla de ‘AUTOS’ y alterar en


la pestaña de ‘DATOS’ un valor del estatus de un auto, en mi caso elegí la RAV4.
Al alterar su estado a ‘J’ y darle a guardar cambios automáticamente marca la fila
con un asterisco (*) mara señalizar el error además de enviarnos un log de fallo.

5. Agregar un ‘check conditions’ a la tabla alquiler que no permita valores negativos


en los alquiles considerando el campo valor_alq.

Con este script se realiza una modificación a la tabla ‘alquiler’ mediante la


instrucción ALTER TABLE usamos una ‘check conditions’ para garantizar que
los valores en la columna valor_alq sean siempre mayores o iguales a cero. Esto
se hizo usando la cláusula ADD CONSTRAINT para así evitar que se ingresen
valores negativos en el campo valor_alq.

6. Haga una instrucción ‘select’ que muestre los clientes que han tenido alquiler en
el año 2012, debe mostrar el id_auto, nombre, anno, id_marca, nom_marca,
id_modelo, nom_modelo, estatus.
Podemos ver en el resultado de la consulta que los valores lanzados coinciden con
loa valores de la tabla de alquiler, pues solo fueron 3 autos alquilados en ese año,
además, el campo de ID_AUTO de los resultados coinciden con los de la Tabla
‘ALQUILER’.

7. Haga una instrucción para crear una tabla llamada ‘Autos_Danados’, la cual debe
guardar los datos de los autos cuyo estatus = ‘X’ (Dañada).

Una vez más crearemos una tabla con la diferencia de esta vez usaremos un
‘SELECT * FROM’ para que traiga todos los datos de la tabla autos, pero, con una
condición, con ‘WHERE’ solo traerá los autos cuyo estatus sea igual a X.
Podemos revisar la tabla de ‘AUTOS’ para confirmar que los autos que aparecen
en la tabla creada sean los correctos.

8. Haga una instrucción para indicar que clientes no han efectuado alquileres en el
año actual. Debe mostrar el ‘id_cliente’, nombre, dirección, celular, email.
rellenan con NULL.
En este caso obviamente nos arrojará como resultado todos los clientes pues
ninguno ha hecho alquileres de autos en el año actual.

Ahora, con este script se realizaremos una consulta a la tabla ‘clientes’ mediante la
instrucción SELECT, usaremos una subconsulta con la condición ‘WHERE NOT
EXISTS’ para así decirle que busque aquellas tablas donde no hay datos sobre
alquileres en el año actual. Para indicarle que busque aquellos campos se le indica
que el id_cedula de alquiler y cliente deben ser igual y que fecha_alq sea mayor
o igual al año actual, para obtener esta información se usó la instrucción
SYSDATE.

Como resultado obtenemos todos los clientes registrados en las tablas de


Clientes, pues ningún cliente tiene alquileres en el año actual.
9. Haga una instrucción para crear una vista de los autos cuyos dias_alq sea mayor
de 1, pero que solo tome en cuenta el primer semestre del 2013 (de enero a
junio).

Luego de lo anterior, crearemos una vista llamada ‘autos_semestre_2013’


mediante la instrucción CREATE VIEW. Aquí usaremos nuevamente un INNER
JOIN entre las tablas ‘alquiler’ y ‘autos’, relacionándolas por el campo id_auto.
Seleccionamos el id_auto, el nombre del auto, la fecha_alq y los dias_alq, y
utilizamos la condición WHERE para indicar que nos dé los autos alquilados donde
los días_alq sean mayor a 1 e indicamos con un AND y BETWEEN que la
fecha_alq esté entre el rango pedido del primer semestre del 2013.
Como resultado nos dará solo 7 autos alquilados durante el primer semestre del
2013, esto podemos confirmarlo nuevamente comparando el ID_AUTO.

10. Crear dos vistas (alq_actual, alq_anteriores) que muestre los alquileres
considerando los del año actual en alq_actual y los demas en alq_anteriores, para
tal efecto debe mostrar, no_docum, id_auto, nombre, fecha_alq, dias_alq,
valor_alq, (dias_alq*valor_alq) total_alq, id_cliente, nomb_cte, estatus).

En ambos scripts se repite muchas instrucciones vistas antes, la única diferencia


es que esta vez crearemos dos views con la línea ‘CREATE VIEW’, al final
usamos una condición WHERE en la cual pediremos, dependiendo el caso, que
nos dé la información de las fechas de alquiler mayores o iguales a la fecha actual
para la primera vista, y en la segunda aquellas fechas de alquileres que son
menores a la fecha actual.

alq_actual

En este caso no nos arroja valores la lista debido a que nadie ha hecho alquileres
en la actualidad.
alq_anteriores

En el caso de alquileres anteriores a la fecha actual, la vista nos mostrará los 11


alquileres hechos anterior al año actual.

11. Crear secuencias para los clientes, autos, marcas, y modelos y añadir un registro
a cada uno de ellos, considerando secuencias para id_auto, id_marca, no_docum.
Id_auto iniciar en 10001, id_marca en 140 y id_modelo en 401.

En este conjunto de scripts creamos secuencias y le asignamos nombres según las


indicaciones con la instrucción ‘CREATE SEQUENCE’, luego de eso le indicamos el
valor con el que empezará la secuencia según lo indicado para esto usé el comando
‘START WITH’, las demás indicaciones las dejamos por defecto como, por ejemplo:
INCREMENTED BY 1, MAX VALUE 99999 y MINVALUE 1.

Lo siguiente que haremos será insertar algunos datos para darle uso a las secuencias
creadas y ponerlas en uso.

En este último scrip usamos ‘INSERT INTO’ para insertar los valores que querramos
en las tablas, indicando los campos que deseaos llenar de forma ordenada. Cabe
resaltar que para insertar los valores debemos usar la instrucción ‘VALUES’ y en lugar
de insertar valores manualmente indicaremos el nombre de las secuencias que
creamos previamente.
Como se puede observar los nuevos valores aparecen insertados en las tabas junto a
los viejos valores que ya existían y las secuencias funcionan perfectamente.

También podría gustarte