Sei sulla pagina 1di 7

SQL: lenguaje para la definición, manipulación y control de bases de datos relacionales II

Ronald Galarza

Fundamentos de bases de datos

Instituto IACC

8 de diciembre del 2019


Desarrollo

Fase I: Revise el siguiente caso de estudio y responda a los requerimientos:

El Instituto Profesional “Estudio”, recientemente ha implementado un sistema de tickets para llevar

registro y seguimiento de las solicitudes que hacen los estudiantes al Departamento de Atención al

Estudiante (DAE). Dentro del departamento, existe un Director, dos Supervisores y “n” Ejecutivos de

Atención al Estudiante. El sistema recién implementado no cuenta con los perfiles de seguridad

necesarios, por lo que cualquier colaborador del departamento puede realizar lo que desee con la base de

datos.

Usted como conocedor del área debe elaborar un informe en el cual exponga los comandos de SQL que

podrían servir para el caso, además de esbozar, de acuerdo a los cargos que se tienen en el departamento,

cómo deberían ser las instrucciones que otorguen o retiren ciertos permisos sobre la base de datos. Asuma

que se tienen las siguientes tablas: Estudiantes Colaboradores, Tickets, Motivos_Contacto. Usted puede

asumir los registros y campos que tengan cada una de las tablas.

R.-

Si bien lo primero que vamos hacer es crear las tablas para poder seguir con nuestro informe de seguridad

y de privilegios que se debe tener en una base datos

ESTUDIANTES COLABORADORES

NOMBRE APELLIDO PATERNO APELLIDO MATERNO RUT

ISABEL ESCOBAR HERNANDEZ 12.647.956-0

MARIA FUENZALIDA SAAVEDRA 16.345.698-K

ALVARO GODOY ECHENIQUE 21.326.188-1

JOSE RIOS SALAZAR 19.298.645-9

MARTIN GUERRERO GAVIRIA 17.465.134-5


TICKETS

NUME_ TICKETS RUT

001 12.647.956-0

002 16.345.698-K

003 21.326.188-1

004 19.298.645-9

005 17.465.134-5

MOTIVOS_CONTACTO

NUME_TICKESTS RUT MOTIVOS

001 12.647.956-0 Solicitud de pase escolar

002 16.345.698-K Certificado de alumno regular

003 21.326.188-1 Comprobante de pago de mensualidad

004 19.298.645-9 Solicitud de pase escolar

005 17.465.134-5 Molestia por no ingreso de nota al libro

Como vemos nuestras tablas están formas pero sin embargo la mayoría aún no está jerarquizada

nuestra base de datos si bien doy a conocer tenemos que reconstruir bien los privilegios es decir

Junto con la creación de la base, de acuerdo a las tablas y orden de estas, es tan o más importante

aún, limitar los accesos de forma que solo tengan acceso a estas bases o sus registros, las

personas indicadas y que necesiten realizar algún trabajo con estos datos. Por lo que se debe
aplicar seguridad a los datos (tablas o registros), de lo contrario se está propenso a la eliminación

o modificación.

Si bien lo primero que vamos a hacer es darle todo los privilegios al DIRECTOR y asi el tiene la

faculta de dar los permisos a cualquier usuario para esta configuración tenemos que usar el

comando WITH GRANT OPTION

- Grant All Privileges on Estudiantes_Colaboradores to director With Grant Option;

- Grant All Privileges on Ticket to director With Grant Option;

- Grant All Privileges on Motivos_Contacto to director With Grant Option;

Y tomando en cuenta a los supervisor se tendría que dar la el siguiente privilegio de

actualización y eliminación de datos solo a las siguientes tablas de TICKETS,

MOTIVOS_CONTACTO, para esta acción utilizaremos el siguiente comando

- Grant Update on ticket to Supervisor

- Grant Update on Motivos_Contacto to Supervisor

- Grant Delete on ticket to Supervisor

- Grant Delete on Motivos_Contacto to Supervisor

Y sobre los ejecutivos solo tendrán la opción agregar o insertar y pedir o consultas información

o datos

- Grant Insert, Select on ticket to Ejecutivos;

- Grant Insert, Select on Motivos_Contacto to Ejecutivos;


Fase II: Se tiene la siguiente tabla que registra para una librería el código del autor, el código del

libro, nombre del libro, código de la editorial, precio y porcentaje de descuento:

A partir de las funciones abordadas durante la semana de estudio, entregue las siguientes

consultas en SQL:

1. Liste la cantidad de libros que tiene la librería actualmente.

SELECT SUM(NOMBRE) AS Suma FROM NOMBRES;

2. Indique el promedio de precios de los libros pertenecientes al autor con código = ‘0001’

SELECT AVG(PRECIO)FROM semana 5 where codigo_autor= 0001

3. Indique el total que recibiría la librería si vende en este momento todos los libros, sin aplicar

ningún tipo de descuento.

SELECT SUM(PRECIO) AS Suma FROM PRECIO

3. Indique el libro con el menor precio.

SELECT MIN(PRECIO) as MINIMO FROM PRECIO

4. Indique el libro con el mayor precio.

SELECT MAX(PRECIOl) as MAXIMO FROM PRECIO

6. Tomando en cuenta el porcentaje de descuento, liste todos los libros que se encuentran en la

librería, y de acuerdo al descuento, imprima lo que indica el siguiente rango: Porcentaje de


Descuento < = 10 imprimir mensaje “Descuento de hasta un 10%”. Porcentaje de Descuento >

10 y < = 25 imprimir mensaje “Descuento de hasta un 25%”. Porcentaje de Descuento > 25

imprimir mensaje “Descuento de más del 25%”.

Bibliografía

[.]

Potrebbero piacerti anche