INSERTAMOS 3 REGISTROS, EN LA ANTERIOR TABLA YA CREADA:
BORRAR REGISTROS DE UNA TABLA Y MOSTRAR RESULTADOS POR PANTALLA
AL SER TIPO MyIsam NO TRANSACCIONAL, no sigue las pautas de una transacción normal.
Por lo general hay que hacer un COMMIT; para aplicar los cambios, pero como MyIsam es NO TRANSACCIONAL, lo aplicará tanto si hacemos COMMIT como si no.
PARA DESHACER cambios, antes de haber hecho un COMMIT; se ha de poner ROLLBACK; esto deshace los cambios en una tabla de motor TRANSACIONAL como en un InnoDB, pero en una MyIsam. Tampoco tendrá resultados.
PARA COMPROBAR EL ESTADO DEL AUTOCOMMIT:
- SHOW VARIABLES LIKE 'AUTOCOMMIT';
SI QUEREMOS DESACTIVARLO:
-SET AUTOCOMMIT=0; SI QUEREMOS ACTIVARLO:
-SET AUTOCOMMIT=1;
PARA HACER UNA TABLA CON AUTOCOMMIT=0, SIN DESACTIVARLO:
En vez de BEGIN; usamos la sintaxis START TRANSACTION;
START TRANSACTION ;
INSERT INTO molinero_myisam VALUES (3,'Brian',25);
COMMIT;
PARA CAMBIAR UN MOTOR DE ALMACENAMIENTO A OTRO EN UNA TABLA YA CREADA:
ALTER TABLE (si ja estaba creada anteriorment) molinero_myisam ENGINE=InnoDB;
CREACIÓN DE UNA VISTA:
CREATE VIEW vista_molinero;
AS SELECT nom_cli,nif,telefon
FROM clients;
SELECT * FROM taula_molinero;
MODIFICAR UNA VISTA:
ALTER VIEW taula_molinero
AS SELECT nom_cli,nif,telefon,ciutat
FROM clients;
SELECT * FROM taula_molinero;
CREAR UN USUARIO Y VER SUS PERMISOS:
CREATE USER vista_molinero IDENTIFIED BY 'r123'; SHOW GRANTS FOR vista_molinero;
HACER QUE EL USUARIO CREADO SOLO TENGA PERMISOS PARA TRABAJAR CON LA VISTA CREADA
GRANT ALL PRIVILEGES
ON dbuoc.taula_molinero
TO vista_molinero;
COMRPOBAR QUE ES CORRECTO EL PASO ANTERIOR:
BORRAR UNA VISTA
DROP VIEW taula_molinero;
Gracias Desy!
ResponderEliminarMe ha servido de gran ayuda para acabar de hacer algunos ejercicios de la practica de Don Xose ;)