Vistas
1) create view saldototalal as select sum(saldo) from cuenta;
select * from saldototalal s;
2) create sql security invoker view datos as
select * from jugador j,equipo e where j.equipo=e.nombre; esta echo cualquir usuario puda acceder a esta vista
2.1) la altura del primero a 202 actulizar
uptade set altura =22 where id_jugador '202'; se puede modificar las vistasaqullas colunas que sean simples y ademas no haya dos colunnas con el mismo nombre simepre que tengas permisos al modificar la vista se modifica la tabla
3) creas el usuario
create user 'limitado'@'localhost';
grant select on liga.datos to'limitado'@'localhost';
hay que darle permisos sobre esa tbla ya que sobre la vista no deja modificalo
grant select on liga.jugador to
grant select on liga.equipi to
ahora vamos aintentar modificar un campo
update liga.datos set altura =180 where ide_jugador='jor';
no deja ya que no tine permisos de update ese usuario sobre las tablas.
create sql security definer view datos as
select * from jugador j,equipo e where j.equipo=e.nombre;
con el definer solo lo puede ver quien haya creado la vista
al reclamar la vista si tine invoker se mira si quien ha definido tine permisos para aceder con definer solo puedes hacer con tus permisos del quee lo ha credo y si es con invoke mira si el invocador tine permiso para eelos
4) create view datos as select dni , nombre ,saldo codigo_cliente from cliente cli , cuenta c
where cli.codigo_cliente=c.cod_cliente;
No hay comentarios:
Publicar un comentario