Tareas Sgbd03
delimiter //
DROP PROCEDURE IF EXISTS tantos //
CREATE DEFINER ='limitado'@'localhost' PROCEDURE tantos()
BEGIN
select grupo, SUM(tantos_marcados) as tantos_clase
from jugadores, clases
where clase = codigo
group by jugadores.clase
order bySUM(tantos_marcados) DESC;
END//
¿Qué permisos necesitará tener asociados ese usuario?
Necesita permisos de EXECUTE y todos los necesarios que estén dentro del BEGIN … END. En este caso SELECT.
2. Crea unevento que llame cada semana al procedimiento anterior.
delimiter //
DROP EVENT IF EXISTS tantos_semana //
CREATE EVENT tantos_semana
ON SCHEDULE EVERY 1 WEEK DO
CALL tantos()//
3.Crea la tabla HCO_CAPITANES con la estructura siguiente:
id : entero, autoincremental, PK
nomantc : Nombre del capitán anterior.
apeantc : Apellido del capitán anterior.
nomactc : Nombre delcapitán actual.
apeactc : Apellido del capitán actual.
clase : Código de la clase en la que cambia el capitán.
fecambio : Fecha del cambio de capitán.
Todos los campos son obligatorios.
DROPTABLE IF EXISTS hco_capitanes;
CREATE TABLE hco_capitanes (
id INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Clave primaria',
nomantc VARCHAR(20) NOT NULL,
apeantc VARCHAR(20) NOT NULL,nomactc VARCHAR(20) NOT NULL,
apeactc VARCHAR(20) NOT NULL,
clase CHAR(3) NOT NULL,
fecambio DATE NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB;
Codifica un disparador que inserte un registro enHCO_CAPITANES tras cambiar el capitán de una clase.
delimiter //
DROP TRIGGER IF EXISTS hcapitan//
CREATE TRIGGER hcapitan BEFORE UPDATE ON baloncesto.clases
FOR EACH ROW
BEGIN
DECLARE...
Regístrate para leer el documento completo.