Add DB exam.

This commit is contained in:
Nicolás A. Ortega Froysa 2022-11-16 14:51:27 +01:00
parent cf096d961b
commit 8973e021eb

View File

@ -0,0 +1,62 @@
/* Nicolás A. Ortega Froysa*/
ALTER SESSION SET "_ORACLE_SCRIPT" = TRUE;
CREATE TABLESPACE TBSP_COMERCIAL
DATAFILE 'C:\ABD\TS\tbsp_comercial.dbf'
SIZE 1M;
CREATE TABLESPACE TBSP_FABRICA
DATAFILE 'C:\ABD\TS\tbsp_fabrica.dbf'
SIZE 1M;
CREATE USER COMERCIAL IDENTIFIED BY COMERCIAL
DEFAULT TABLESPACE TBSP_COMERCIAL;
CREATE USER FABRICA IDENTIFIED BY FABRICA
DEFAULT TABLESPACE TBSP_FABRICA;
DROP TABLE COMERCIAL.clientes;
CREATE TABLE COMERCIAL.clientes(
codigo INT,
nombre VARCHAR(50),
fecha_registro DATE);
CREATE TABLESPACE TBSP_PEDIDOS
DATAFILE 'C:\ABD\TS\tbsp_pedidos.dbf'
SIZE 1M
AUTOEXTEND ON MAXSIZE 10M;
DROP TABLE COMERCIAL.pedidos;
CREATE TABLE COMERCIAL.pedidos(
num_pedido INT,
cliente_codigo INT,
articulo_codigo VARCHAR2(20),
precio_total NUMBER,
fecha_pedido DATE) TABLESPACE TBSP_PEDIDOS;
DROP TABLE FABRICA.articulos;
CREATE TABLE FABRICA.articulos(
codigo_articulo VARCHAR2(20),
fecha_registro_cliente DATE,
nombre VARCHAR2(20) NOT NULL,
precio NUMBER(2),
fecha_pedido DATE);
REVOKE ALL ON COMERCIAL.pedidos FROM PUBLIC;
GRANT READ ON COMERCIAL.pedidos TO COMERCIAL;
REVOKE ALL ON COMERCIAL.clientes FROM FABRICA;
GRANT READ,INSERT,UPDATE,DELETE ON FABRICA.articulos TO COMERCIAL
WITH GRANT OPTION;
CREATE USER JEFE_COMERCIAL
IDENTIFIED BY JEFE_COMERCIAL
DEFAULT TABLESPACE TBSP_COMERCIAL;
GRANT ALL ON COMERCIAL.pedidos TO JEFE_COMERCIAL
WITH GRANT OPTION;
GRANT ALL ON COMERCIAL.clientes TO JEFE_COMERCIAL
WITH GRANT OPTION;
SELECT c.nombre, SUM(p.precio_total)
FROM COMERCIAL.pedidos p
JOIN COMERCIAL.clientes c ON p.cliente_codigo=c.codigo
GROUP BY c.nombre;