Computing">
Nothing Special   »   [go: up one dir, main page]

Garcia Matilla Ruben BD02 Tarea

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

Tarea para BD02

Ciclo superior DAW

Módulo: Bases de datos

Alumno: Rubén García Matilla


DAW BASES DE DATOS BD02

Contenido

Enunciado. ......................................................................................................... 3

EJERCICIO 1: .................................................................................................... 4

EJERCICIO 2: .................................................................................................... 6

EJERCICIO 3: .................................................................................................... 7

2
Rubén García Matilla
DAW BASES DE DATOS BD02

Enunciado.
Detalles de la tarea de esta unidad.

Realiza los ejercicios en la Hoja de trabajo de SQLDeveloper o


desde SQLPlus conectando con tu usuario, creado en la primera tarea, y comprueba
que las sentencias son correctas antes de incluirlas en el script. Una vez hayas
hecho todas para probar el script, desde SQLPlus, ejecuta start
nombrescript.sql o @nombrescript.sql eliminando previamente todas las tablas
creadas para poder crearlas de nuevo.

Vamos a crear las tablas para una tienda virtual que distribuye productos,
agrupados en familias, en varias tiendas.

Realiza un script llamado Creatienda.sql que implemente los ejercicios descritos a


continuación.

Precede cada una de las sentencias SQL de los ejercicios con un comentario que
incluya el enunciado del ejercicio correspondiente. Recuerda que los comentarios
van precedidos del símbolo -- al inicio de la línea.

Con las sentencias DDL de SQL, crea las tablas especificadas a continuación,
aplicando las restricciones (constraints) pedidas. Se debe cumplir la integridad
referencial.

3
Rubén García Matilla
DAW BASES DE DATOS BD02

EJERCICIO 1:
Enunciado.

TABLA FAMILIA: => Contiene las familias a las que pertenecen los productos, como por ejemplo
ordenadores, impresoras,etc.

Nombre Columna Descripción Tipo dato Restricciones


Codfamilia Código que Numérico de Clave primaria.
distingue una 3 dígitos
familia de otra
Denofamilia Denominación Alfanumérico No puede haber dos familias con
de la familia de 50 la misma denominación. Debe
caracteres tener contenido.

TABLA PRODUCTO: => contendrá información general sobre los productos que distribuye la
empresa a las tiendas.

Nombre Descripción Tipo dato Restricciones


Columna
Codproducto Código que distingue un producto Numérico de 5 Clave primaria.
de otro dígitos
Denoproducto Denominación del producto Alfanumérico de Debe tener contenido.
20 caracteres
Descripcion Descripción del producto Alfanumérico de
100 caracteres
PrecioBase Precio base del producto Numérico de 8 Mayor que 0.
dígitos dos de
ellos decimales Debe tener contenido.
PorcReposición Porcentaje de reposición aplicado Numérico de 3 Mayor que 0
a ese producto. Se utilizará para dígitos
aplicar a las unidades mínimas y
obtener el número total de
unidades a reponer cuando el
stock esté bajo mínimo
UnidadesMinimas Unidades mínimas recomendables Numérico de 4 Mayor que 0. Debe
en almacén dígitos tener contenido.
Codfamilia Código de la familia a la que Numérico de 3 Clave ajena, referencia
pertenece el producto dígitos a Codfamilia de la
tabla FAMILIA. Debe
tener contenido.

4
Rubén García Matilla
DAW BASES DE DATOS BD02

TABLA TIENDA: => contendrá información básica sobre las tiendas que distribuyen los productos.

Nombre Columna Descripción Tipo dato Restricciones


Codtienda Código que distingue Numérico de 3 dígitos Clave primaria.
una tienda de otra.
Denotienda Denominación o Alfanumérico de 20 caracteres Debe tener contenido.
nombre de la tienda.
Telefono Teléfono de la tienda Alfanumérico de 11 caracteres

CodigoPostal Codigo Postal donde Alfanumérico de 5 caracteres Debe tener contenido.


se ubica la tienda
Provincia Provincia donde se Alfanumérico de 5 caracteres Debe tener contenido.
ubica la tienda

TABLA STOCK : => Contendrá, para cada tienda, el número de unidades disponibles de cada
producto. La clave primaria está formada por la concatenación de los campos Codtienda y
Codproducto.

Nombre Descripción Tipo dato Restricciones


Columna
Codtienda Código de la Numérico Clave ajena, referencia a
tienda. de 3 dígitos Codtienda de la tabla
tienda. Debe tener
Clave primaria: contenido.
Codproducto Código del Numérico Clave ajena, referencia a
(Codtienda,Codproducto)
producto de 5 dígitos Codproducto de la tabla
PRODUCTO. Debe tener
Permite que un producto
contenido.
pueda aparecer en varias
tiendas, y que en una
tienda pueda haber varios
productos.
Unidades Unidades de Numérico Mayor o igual a 0. Debe tener contenido.
ese producto de 6 dígitos.
en esa tienda

Mediante los comandos indicados en el script se han creado las diferentes tablas.

La verdad que no es complicado, aunque al principio surgen dudas que se van solucionando a
través de google principalmente.

5
Rubén García Matilla
DAW BASES DE DATOS BD02

EJERCICIO 2:
A) Modificar las tablas creadas en el ejercicio anterior siguiendo las indicaciones. Los ejercicios se
incluirán en un script llamado ModificaTienda.sql. Cada uno de ellos, como en el ejercicio
anterior, irá precedido de un comentario con el enunciado.

 Añadir a la tabla STOCK


o Una columna de tipo fecha, llamada FechaUltimaEntrada, que por defecto tome el
valor de la fecha actual.
o Una columna llamada Beneficio, que contendrá el tipo de porcentaje de beneficio
que esa tienda aplica en ese producto. Se debe controlar que el valor que almacene
sea 1,2, 3, 4 o 5.

 En la tabla PRODUCTO
o Eliminar de la tabla producto la columna Descripción.
o Añadir una columna llamada perecedero, que únicamente acepte los valores: S o N.
o Modificar el tamaño de la columna Denoproducto a 50.

 En la tabla FAMILIA
o Añadir una columna llamada IVA, que represente el porcentaje de IVA y únicamente
pueda contener los valores 21, 10,ó 4.

 En la tabla tienda
o La empresa desea restringir el número de tiendas con las que trabaja, de forma que
no pueda haber más de una tienda en una misma zona (la zona se identifica por el
código postal). Definir mediante DDL las restricciones necesarias para que se cumpla
en el campo correspondiente.

B) Renombra la tabla STOCK por PRODXTIENDAS.

C) Elimina la tabla FAMILIA y su contenido si lo tuviera.

D) Crea un usuario llamado C##INVITADO siguiendo los pasos de la unidad 1 y dale todos los
privilegios sobre la tabla PRODUCTO.

E) Retira los permisos de modificar la estructura de la tabla y borrar contenido de la tabla


PRODUCTO al usuario anterior.

Del mismo modo que en el anterior apartado los comandos utilizados vienen especificados
en el script.

Lo que me ha llevado algo más de tiempo ha sido la parte de creación y permisos de los
usuarios, ya que el usuario finalmente lo creaba con sys mientras que tenía que volver a
c##ruben para dar y quitar permisos.

6
Rubén García Matilla
DAW BASES DE DATOS BD02

EJERCICIO 3:
SQLDeveloper permite obtener el diagrama del modelo entidad relación, a partir de las tablas ya
creadas, con la información contenida en el Diccionario de Datos. Una vez tengas realizados los
ejercicios 1 y 2 genera el diagrama entidad relación y expórtalo en formato PNG.

En este enlace tienes los pasos a seguir

SQL Developer: Obtener Entidad/Relacion

Siguiendo los pasos del enlace se llega a:

7
Rubén García Matilla

También podría gustarte