Upload
doduong
View
250
Download
1
Embed Size (px)
Citation preview
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: 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
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.
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.