Bases de Datos - funciones triggers

 
Vista:

funciones triggers

Publicado por Matias (1 intervención) el 14/06/2020 23:57:38
HOLA me podrian ayudar con el ejercicio 4. os agradeceria mucho.


--------------------------------------------------------
CREAR TABLA EMPLEADOS
--------------------------------------------------------
1
2
3
4
5
6
7
8
9
CREATE TABLE empleados(
	codigo VARCHAR(4) NOT NULL,
	nombre VARCHAR(20) NULL,
	direccion VARCHAR(20) NULL,
	telefono VARCHAR(8) NULL,
	salario NUMERIC NULL,
	puesto VARCHAR(20) NULL,
	jefe VARCHAR(4) NULL
);

-------------------------------------------------------------------
MODIFICACIÓN DE ATRIBUTOS PARA DEFINIR QUE ES CLAVE PRIMARIA Y CLAVE FORÁNEA
-------------------------------------------------------------------

1
2
3
ALTER TABLE empleados ADD PRIMARY KEY(codigo);
 
ALTER TABLE empleados ADD FOREIGN KEY(jefe) REFERENCES empleados

-------------------------------------------------------------------
CONSULTA A LA TABLA EMPLEADOS
-------------------------------------------------------------------

1
SELECT * FROM empleados;

-------------------------------------------------------------------
INSERTAR VALORES A LA TABLA EMPLEADOS
-------------------------------------------------------------------

1
2
3
4
5
6
INSERT INTO empleados(codigo,salario)VALUES('0001',1500);
INSERT INTO empleados(codigo,salario)VALUES('0002',1600);
INSERT INTO empleados(codigo,salario)VALUES('0010',1550);
INSERT INTO empleados(codigo,salario)VALUES('1000',3000);
INSERT INTO empleados(codigo,salario)VALUES('1300',3000);
INSERT INTO empleados(codigo,salario)VALUES('1100',3000);

-------------------------------------------------------------------
CONSULTA A LA TABLA EMPLEADOS
-------------------------------------------------------------------

1
SELECT * FROM empleados;

--------------------------------------------------------------------
--Luego Actualizamos las filas para incluir el jefe de los Empleado-
1
2
3
4
5
6
UPDATE empleados SET jefe='1000' WHERE codigo='0001';
UPDATE empleados SET jefe='1000' WHERE codigo='0002';
UPDATE empleados SET jefe='1300' WHERE codigo='0010';
UPDATE empleados SET jefe='1100' WHERE codigo='1000';
 
SELECT * FROM empleados;
--------------------------------------------------------------------

--------------------------------------------------------------------
---------------------------TRIGGERS---------------------------------

4. Podríamos implementar esta regla con un único trigger para ambos eventos, usaremos de nuevo dos triggers, con lo que la transacción que incluya la actualización podría, continuar.
a) Control de Inserciones: Una posible definición del trigger que controla la inserción de empleados con salario equivocado es la siguiente:
b)Ahora veamos si el trigger funciona como es debido, Hagamos que el empleado 0001 que gana 1500 sea jefe del nuevo empleado de código 1200 y el salario 3000.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder