0% encontró este documento útil (0 votos)
25 vistas5 páginas

Final R3 U2

Administración de bases de datos

Cargado por

Angel Jauregui
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas5 páginas

Final R3 U2

Administración de bases de datos

Cargado por

Angel Jauregui
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Administración

de bases de datos
| Reto 3
Generar una bitácora de trabajo de
administración de bases de datos

Nombre completo

Matrícula

Fecha de 14 noviembre del 2022


elaboración

Nombre del Administración de bases de datos


Módulo

Nombre del Aracely González García


Asesor
1 Introducción
Una bitácora de trabajo o fichero de registro log, se utiliza para registrar la
información acerca de los eventos que ocurren en el DBMS como, por ejemplo:
instalación, administración y explotación. Esta bitácora es útil para poder
averiguar las posibles fallas o realizar auditorías de las operaciones que los
clientes realizan. Te invitamos a poner en práctica lo aprendido en la Lección de
bitácoras de trabajo del administrador de bases de datos, resolviendo este Reto.

2 Caso de estudio
Instrucción: Revisa con detenimiento el siguiente caso.

Un administrador de base de datos de un hospital desea realizar una bitácora


de trabajo para registrar las operaciones de insert, update y delete sobre la
tabla doctores. La creación de la tabla doctores y bitácora de trabajo, se
muestra a continuación:

CREATE DATABASE hospital;


use hospital;
CREATE TABLE doctores
(
id int NOT NULL,
nombre VARCHAR(25) NOT NULL,
apellido VARCHAR(25) NOT NULL,
especialidad VARCHAR(25) NOT NULL,
);

CREATE TABLE bitacora_trabajo


(
id_registro int NOT NULL AUTO_INCREMENT,
operacion VARCHAR(25) DEFAULT NULL,
usuario_cambio VARCHAR(25) DEFAULT NULL,
host_log VARCHAR(25) NOT NULL,
fecha_modificacion DATETIME DEFAULT NULL,
tabla_modificacion VARCHAR(50) NOT NULL,
PRIMARY KEY (id_registro)
)
ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
3 Bitácora de trabajo
Instrucción: Completa la plantilla con los triggers o disparadores que se
muestran a continuación:

a. log_doctores_insertar
b. INSERT ON
c. "INSERTAR"
d. log_doctores_actualizar
e. UPDATE ON
f. "ACTUALIZAR"
g. log_doctores_eliminar
h. DELETE ON
i. "ELIMINAR"
j. INSERT
k. UPDATE
l. DELETE
m. 'INSERTAR' ON
n. 'ACTUALIZAR' ON
o. 'ELIMINAR' ON

Plantilla para rellenar

DELIMITER //

CREATE TRIGGER log_doctores_insertar AFTER INSERT ON doctores

FOR EACH ROW INSERT INTO bitacora_trabajo(host_log, usuario_cambio,

operacion, fecha_modificacion, tabla_modificacion)

VALUES (SUBSTRING(USER(), (INSTR(USER(), '@')+1)),

SUBSTRING(USER(), 1, (INSTR(USER(), '@')-1)), “INSERTAR”, NOW(),

"DOCTORES")

//

CREATE TRIGGER log_doctores_actualizar AFTER UPDATE ON doctores


FOR EACH ROW INSERT INTO bitacora_trabajo(host_log, usuario_cambio,

operacion, fecha_modificacion, tabla_modificacion)

VALUES (SUBSTRING(USER(), (INSTR(USER(), '@')+1)), SUBSTRING(USER(),

1, (INSTR(USER(), '@')-1)), “ACTUALIZAR”, NOW(), "DOCTORES")

//

CREATE TRIGGER log_doctores_eliminar AFTER DELETE ON doctores

FOR EACH ROW INSERT INTO bitacora_trabajo(host_log, usuario_cambio,

operacion, fecha_modificacion, tabla_modificacion)

VALUES (SUBSTRING(USER(), (INSTR(USER(), '@')+1)),

SUBSTRING(USER(), 1, (INSTR(USER(), '@')-1)), “ELIMINAR”, NOW(),

"DOCTORES")

//

4 Tabla bitácora de trabajo


Instrucción: Completa la tabla de la bitácora de trabajo de acuerdo con las
consultas mostradas, teniendo en cuenta que los registros iniciales de la tabla
doctores y el usuario identificado en la base de datos es root@localhost:

id nombre apellido especialidad


1546 Laura Flores Pediatría
1547 Jaime Valdez Cardiología
1548 Paulina Ferrer Ginecología
1549 Andrés Valdivia Ginecología

Consultas:

INSERT INTO doctores(id, nombre, apellido, especialidad)


VALUES ('1875','Amelia', 'Hernández', 'Neurología');

UPDATE doctores
SET especialidad='Urología' WHERE especialidad='Ginecología'
DELETE FROM doctores
WHERE id = '1549'

Tabla para rellenar

id_registro operación usuario_cambi host_log fecha_modificaci tabla_modificacio


o on n
1 Root Localho 2022-11-14 DOCTORES
INSERTA st 16:47:21
R
2 INSERTA Root localho 2022-11-14 DOCTORES
R st 16:47:21

3 INSERTA Root localho 2022-11-14 DOCTORES


R st 16:47:21

4 INSERTA Root localho 2022-11-14 DOCTORES


R st 16:47:21

5 INSERTA Root localho 2022-11-14 DOCTORES


R st 16:47:21

6 ACTUAL Root localho 2022-11-14 DOCTORES


IZAR st 16:52:04

7 ACTUAL Root localho 2022-11-14 DOCTORES


IZAR st 16:52:04

8 ELIMINA root localho 2022-11-14 DOCTORES


R st 16:52:21

También podría gustarte