4
Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor: Ing. Ricardo Hernández Valencia E-mail: [email protected] ADDRESS: Sur 69-A # 3138 Tel: (55) 67232060 www.certificatic.org Col. Viaducto Piedad WhatsApp: 5525697362 Del. Iztacalco C.P. 08200 Ejercicio 2 DDL y DML Una empresa desea llevar el control del inventario de los equipos de oficina que venden en cada una de sus tiendas. Para ello el director de sistemas envío el requerimiento al DBA de la empresa. El Administrador de Base de Datos analizó la situación del negocio y decidió realizar el siguiente diseño: Un catálogo de tiendas (TIENDAS) para poder asociar a cada tienda con su respectivo inventario de equipos de oficina que vende. En el catálogo se pretende guardar la siguiente información: - ID_TIENDA (número identificador de 10 unidades y clave primaria) - NOMBRE_TIENDA (cadena de 40 caracteres) - DIRECCION_TIENDA (cadena de 200 caracteres) Dado que se han proporcionado los datos de las siguientes tiendas, es necesario ingresar dicha información en el catálogo de tiendas (TIENDAS). ID_TIENDA NOMBRE_TIENDA DIRECCION_TIENDA 1 La Nena Callejon de la Nena #123, Colonia Dulce Amor 2 La Virgen Calle Rosa de Guadalupe #2, Colonia Bajo del Cerro 3 La Piscina Avenida de los Charcos #78, Colonia El Mojado 4 El Churro Calle el Pason #666, Colonia El Viaje 5 Don Pancho Avenida del Reboso #1521, Colonia El Burro Una tabla para poder almacenar el inventario (INVENTARIOS) de los equipos de oficina que se venden en cada tienda. En dicha tabla pretende almacenar la siguiente información: - ID_ARTICULO (número identificador de 10 unidades y clave primaria) - NOMBRE (cadena de 50 caracteres) - COMENTARIO (cadena de 200 caracteres) - PRECIO (número de 10 unidades con 2 decimales) - ID_TIENDA (número identificador referente al catálogo de TIENDAS) Para tener un mejor control del inventario del equipo es necesario que cumpla las siguientes condiciones:

Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor ...makingpit.com/wp-content/uploads/2015/09/Ejercicio-2-DDL-y-DML.pdf · Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor:

  • Upload
    doduong

  • View
    250

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor ...makingpit.com/wp-content/uploads/2015/09/Ejercicio-2-DDL-y-DML.pdf · Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor:

Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor: Ing. Ricardo Hernández Valencia

E-mail: [email protected] ADDRESS: Sur 69-A # 3138

Tel: (55) 67232060 www.certificatic.org Col. Viaducto Piedad

WhatsApp: 5525697362 Del. Iztacalco C.P. 08200

Ejercicio 2 – DDL y DML

Una empresa desea llevar el control del inventario de los equipos de oficina que venden en

cada una de sus tiendas. Para ello el director de sistemas envío el requerimiento al DBA de la

empresa. El Administrador de Base de Datos analizó la situación del negocio y decidió realizar el

siguiente diseño:

Un catálogo de tiendas (TIENDAS) para poder asociar a cada tienda con su respectivo

inventario de equipos de oficina que vende. En el catálogo se pretende guardar la siguiente

información:

- ID_TIENDA (número identificador de 10 unidades y clave primaria)

- NOMBRE_TIENDA (cadena de 40 caracteres)

- DIRECCION_TIENDA (cadena de 200 caracteres)

Dado que se han proporcionado los datos de las siguientes tiendas, es necesario ingresar

dicha información en el catálogo de tiendas (TIENDAS).

ID_TIENDA NOMBRE_TIENDA DIRECCION_TIENDA

1 La Nena Callejon de la Nena #123, Colonia Dulce Amor

2 La Virgen Calle Rosa de Guadalupe #2, Colonia Bajo del Cerro

3 La Piscina Avenida de los Charcos #78, Colonia El Mojado

4 El Churro Calle el Pason #666, Colonia El Viaje

5 Don Pancho Avenida del Reboso #1521, Colonia El Burro

Una tabla para poder almacenar el inventario (INVENTARIOS) de los equipos de oficina

que se venden en cada tienda. En dicha tabla pretende almacenar la siguiente

información:

- ID_ARTICULO (número identificador de 10 unidades y clave primaria)

- NOMBRE (cadena de 50 caracteres)

- COMENTARIO (cadena de 200 caracteres)

- PRECIO (número de 10 unidades con 2 decimales)

- ID_TIENDA (número identificador referente al catálogo de TIENDAS)

Para tener un mejor control del inventario del equipo es necesario que cumpla las

siguientes condiciones:

Page 2: Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor ...makingpit.com/wp-content/uploads/2015/09/Ejercicio-2-DDL-y-DML.pdf · Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor:

Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor: Ing. Ricardo Hernández Valencia

E-mail: [email protected] ADDRESS: Sur 69-A # 3138

Tel: (55) 67232060 www.certificatic.org Col. Viaducto Piedad

WhatsApp: 5525697362 Del. Iztacalco C.P. 08200

- El identificador del producto (ID_ARTICULO) debe ser un valor único que identifique al

artículo.

- El nombre del producto (NOMBRE) no se debe de duplicar y debe de ser único.

- El comentario del producto (COMENTARIO) no debe de contener valores nulos.

- El precio del producto (PRECIO) debe ser mayor a cero.

- El identificador de la tienda (ID_TIENDA) debe de hacer referencia al catálogo de

TIENDAS que se definió anteriormente.

1. Indicar las sentencias DDL y DML que permitan al DBA, crear e introducir la información

proporcionada en la tabla TIENDAS.

2. Crear la sentencia DDL que permita al DBA, crear la tabla INVENTARIOS tomando en

cuenta las restricciones planteadas anteriormente.

Una vez creada la tabla de INVENTARIOS, el Administrado de Base de Datos se percató que

al consultar la información de la tabla a través del campo ID_TIENDA, el desempeño y

rapidez de la consulta podría ser deficiente. Por lo que recomendó la creación de un índice.

3. Realizar la sentencia con la cual el DBA debe de crear el índice de tipo B-TREE en la tabla

INVENTARIOS sobre la columna ID_TIENDA.

Debido a la longitud del nombre de las tablas y la pereza del departamento de desarrollo.

Se solicitó al DBA que las tablas pudieran ser identificadas con una nomenclatura más

corta. Por lo que la tabla INVENTARIOS también pueda ser llamada “INV” y la tabla

TIENDAS “TDA”.

4. Indicar las sentencias con las que el DBA debe de crear los sinónimos “INV” y “TDA” de

las tablas INVENTARIOS y TIENDAS respectivamente.

Una vez atendidos los requerimientos anteriores, el departamento de contabilidad le ha

indicado al Administrador de Base de Datos que ingrese la información del inventario de los

equipos de oficina que aparece a continuación.

ID_ARTICULO NOMBRE COMENTARIO PRECIO ID_TIENDA

1 CD-DVD 700 MB DE ESPACIO $40.00 1

1 USB-HP 64GB, USB 3.0 $359.00 2

2 CD-DVD 4GB RAM, 500 HDD, i5 2.6 GHz. $14,000.00 3

4 MOUSE OPTICO $140.00 4

5 DISCO DURO 200 GB, HDD, USB 3.0 - $1,000.00 5

6 PROYECTOR TOSHIBA G15 $5,500.00 6

Page 3: Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor ...makingpit.com/wp-content/uploads/2015/09/Ejercicio-2-DDL-y-DML.pdf · Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor:

Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor: Ing. Ricardo Hernández Valencia

E-mail: [email protected] ADDRESS: Sur 69-A # 3138

Tel: (55) 67232060 www.certificatic.org Col. Viaducto Piedad

WhatsApp: 5525697362 Del. Iztacalco C.P. 08200

5. Crear las sentencias DML que permitan al DBA, insertar la información proporcionada tal

y como se indicó por parte del departamento de contabilidad con ayuda del sinónimo

creado.

6. Generar las sentencias DML utilizando el sinónimo de la tabla, para ayudar al DBA a

ingresar de manera satisfactoria y con la menor varianza, la información proporcionada

por el departamento de contabilidad.

Una vez ingresada la información satisfactoriamente y revisada por el gerente de ventas de

cada tienda, se han percatado de que la información ingresada ha sido errónea. Por lo que

se le ha requerido al Administrador de la Base de Datos el borrado de la información de la

manera más rápida posible.

7. Crear la sentencia DDL que permita al DBA, borrar toda la información de la tabla

INVENTARIOS de la manera más eficiente.

Después de haber sido eliminada la información anterior, los gerentes de ventas han

proporcionado la información correcta de los artículos del inventario.

ID_ARTICULO NOMBRE COMENTARIO PRECIO ID_TIENDA

1 CD-DVD 900 MB DE ESPACIO $35.50 5

2 USB–HP 32GB, USB 3.0 $155.90 4

3 Laptop SONY 4GB RAM, 300 HDD, i5 2.6 GHz.

$13,410.07 3

4 Mouse Optico 700 DPI $104.40 2

5 Disco Duro 200 TB, HDD, USB 3.0 $2,300.00 1

6 Proyector TSHB TOSHIBA G155 $5,500.00 5

8. Indicar las sentencias DML con las que el DBA debe de insertar la información en la tabla

INVENTARIOS, utilizando el sinónimo de la tabla.

Page 4: Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor ...makingpit.com/wp-content/uploads/2015/09/Ejercicio-2-DDL-y-DML.pdf · Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor:

Oracle Database 12c: SQL & PL/SQL Fundamentals Instructor: Ing. Ricardo Hernández Valencia

E-mail: [email protected] ADDRESS: Sur 69-A # 3138

Tel: (55) 67232060 www.certificatic.org Col. Viaducto Piedad

WhatsApp: 5525697362 Del. Iztacalco C.P. 08200

Dado que el dólar se ha encontrado en su valor máximo histórico en el país, los

proveedores han incrementado un 15% el valor de cada producto. Por lo que los gerentes

de ventas han solicitado al Administrador de Base de Datos incrementar un 15% el precio

de los productos que cuyo valor sea mayor a $2,000.00 pesos.

9. Realizar las sentencias DML que ayuden al DBA a actualizar los registros con el nuevo

valor (+15%), de aquellos productos cuyo precio sea mayor a $2,000.00 pesos. Utilizar el

sinónimo de la tabla.

El personal de inspección, encargados de revisar el producto existente en cada tienda. Ha

solicitado al DBA de la empresa realizar una vista llamada “CONCENTRADO”, donde se

pueda consultar toda la información del producto y toda la información de la tienda donde

se encuentra cada uno.

10. Generar la sentencia que permita al DBA, crear la vista “CONCENTRADO” con la

información solicitada por el personal de inspección. Utilizar los sinónimos de las tablas.

El gerente del personal de inspección ha solicitado conocer toda la información de los

productos y las tiendas a través de la vista generada por el Administrador de la Base de

Datos. Pero solo necesita conocer dicha información de la tienda “Don Pancho”. Dado que

la información es urgente y es necesario generar el reporte de manera inmediata, el

desempeño de la consulta debe de ser el más óptimo.

11. Crear la consulta que ayude al DBA a utilizar la vista generada y obtener solo la

información del inventario de la tienda “Don Pancho”. Para un mejor desempeño de

dicha consulta, utilizar el índice creado con anterioridad en la tabla INVENTARIOS para la

llave foránea ID_TIENDA. Consultar el plan de ejecución y las estadísticas de la consulta

generada.