Fundamentación
Teórica.
Enuncie dos políticas de
seguridad para un DBA:
Crear las bases de datos con el usuario
postgres.
NO dar permiso de creación de base de datos
a los usuarios.
NO dar permiso de creación de usuarios a
los usuarios.
LIMITAR el número de conexiones a las BD.
CONCEDER solo privilegios de lectura o
escritura sobre ciertas tablas.
Plantee la Sentencia SQL, que
remueva todos los permisos para todos los usuarios de la base de datos
“Inventarios”
REVOKE ALL ON DATABASE Inventarios FROM public;
Plantee la Sentencia SQL, para
alterar un usuario llamado “atletico” con password “bucaros” y que tenga
permisos de LOGIN y además no le permita crear bases de Datos.
ALTER
user atletico LOGIN PASSWORD ‘bucaros’ NOCREATEDB;
Plantee las Sentencia SQL,
para eliminar el usuario “nanaya” y otra para observar todos los usuarios del
sistema.
DROP USER nanaya; -> Para eliminar un usuario.
SELECT * FROM pg_user; -> Para observar todos
los usuarios del sistema.
Enuncie los pasos a seguir
desde el PG Admin, para no ingresar con el usuario postgres sino con un nuevo
usuario llamado “Santiago” y nos conectaremos a la base de datos “Inventarios”.
Clic derecho sobre el nombre del servidor -> propiedades, aparecerá
una ventana emergente con la configuración de la conexión, cambie la propiedad
username por Santiago y la propiedad Maintenance DB por Inventarios
SQL COMANDOS DDL Y DML
Fundamentación
Práctica
Teniendo en cuenta las figuras CONSOLA, JUEGO y CONSOLA_JUEGO, utilizar
el lenguaje SQL del Sistema Manejador de Bases de Datos postgresql para:
Crear la base de datos (relacionado con su contexto)
CREATE DATABASE consolas
Crear las tablas (con sus respectivas llaves primarias y foráneas, si es
el caso)
CREATE TABLE consola (
id_consola int,
nombre varchar (50),
tipo varchar (15),
marca varchar (50),
PRIMARY KEY (id_consola)
);
CREATE TABLE juego(
id_juego int,
titulo varchar(50),
genero varchar(50),
PRIMARY KEY (id_juego)
);
CREATE TABLE consola_juego(
id_consola int,
id_juego int,
stock int,
PRIMARY KEY (id_consola, id_juego),
FOREIGN KEY (id_consola) REFERENCES
consola(id_consola),
FOREIGN KEY (id_juego) REFERENCES
juego(id_juego)
);
Insertar los registros (que aparecen en las figuras)
INSERT INTO consola VALUES(1,'PS4','Sobremesa','Sony');
INSERT INTO consola(id_consola,
nombre, tipo, marca) VALUES(2,'XBOX ONE','Sobremesa','Microsoft');
INSERT INTO consola(id_consola,
nombre, tipo, marca) VALUES(3,'3DS','Portatil','Nintendo');
SELECT * FROM consola;
INSERT INTO juego(id_juego,
titulo, genero) VALUES(1,'Dark Souls III', 'ROL');
INSERT INTO juego (id_juego,
titulo, genero) VALUES(2,'Project Cars', 'Conduccion');
INSERT INTO juego(id_juego,
titulo, genero) VALUES(3,'Metal Gear Solid V', 'Accion');
INSERT INTO juego (id_juego,
titulo, genero) VALUES(4,'Killer Instinct', 'Lucha');
INSERT INTO juego(id_juego,
titulo, genero) VALUES(5,'Metroid Prime', 'Accion');
INSERT INTO juego(id_juego,
titulo, genero) VALUES(6,'Dragon Quest VII', 'ROL');
SELECT * FROM juego;
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(1,1, 45);
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(1,2, 30);
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(1,3, 15);
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(2,3, 15);
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(2,4, 19);
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(3,5, 34);
INSERT INTO consola_juego
(id_consola, id_juego, stock) VALUES(3,6, 23);
SELECT * FROM consola_juego;
Consulta: Mostrar los tipos de consolas que hay registrados
SELECT tipo FROM consola;
Consulta: Nombre de los juegos que sólo están en 3DS
SELECT titulo FROM juego
WHERE juego.id_juego IN(
SELECT id_juego FROM consola_juego
WHERE consola_juego.id_consola IN(
SELECT id_consola FROM consola
WHERE consola.nombre='3DS')
);
Consulta: Stock total de aquellos juegos cuyo género sea de Acción
SELECT SUM(consola_juego.stock)
FROM consola_juego
WHERE consola_juego.id_juego
IN(
SELECT id_juego FROM juego
WHERE juego.genero='accion');
Consulta: Titulo de aquellos juegos con stock total que supere las 20
unidades
SELECT juego.titulo FROM juego
WHERE juego.id_juego IN(
SELECT id_juego FROM consola_juego
GROUP BY id_juego
HAVING SUM(consola_juego.stock) >
20);
Realizar un UPDATE – Utilizado para modificar los valores de los campos
y registros especificados.
UPDATE juego SET titulo='The Legend
of Zelda'
WHERE titulo='Metroid Prime';
Realizar un DELETE – Utilizado para eliminar registros de una tabla de
una base de datos
DELETE FROM consola WHERE
id_consola=1;
Insertar un registro adicional por cada tabla.
INSERT INTO consola VALUES(1,'XS','Sobremesa','Sony');
No hay comentarios.:
Publicar un comentario