Los requisitos mínimos para un CREATE EVENT válido son: DO ON SCHEDULE CREATE EVENT COMMENT IF NOT EXISTS. Ordene para hacer coincidir con la sintaxis de modificación de un evento:
[...]
[ [...] = user]
[ [...] event_name
[ [...] schedule]
[ [...] [NOT] PRESERVE]
[RENAME TO new_event_name]
[ENABLE | DISABLE | DISABLE [...] SLAVE]
[COMMENT 'string']
[ [...] event_body] [ON_COMPLETION] [ON] [DEFINER] [ALTER] [ON_SCHEDULE] [DO] [EVENT]. A partir de la consulta de un evento:
SHOW EVENTS\G
*************************** 1. row ***************************
Db: myschema
Name: e_daily
Definer: jon@ghidora
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2018-08-08 11:06:34
Ends: NULL
Status: ENABLED
Originator: 1
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: La zona horaria del evento Fecha y hora de inicio para un evento recurrente El número de intervalos que hay que esperar entre las ejecuciones de eventos Estado del evento. Completa los huecos de la sintaxis de la eliminación de una vista:
[ 1... ] VIEW [ 2... ]
[ 3... ] [, view_name] ...
[ [ 4... ] | CASCADE ] 1... 2... 3... 4... Los acontecimientos (eventos) son tareas que se ejecutan en una tabla concreta. Por lo tanto nos podemos referir a ellos como eventos programados: Falso Verdadero. Ordene para completar la sintaxis de eliminación de un evento: [[IF_EXISTS]] [EVENT] [DROP] [event_name]. Selecciona la o las opciones correctas de la cláusula Algorithm en la creación de una vista: Si no hay ninguna cláusula Algorithm, el algoritmo predeterminado se determina por el valor de la bandera derived_merge de la
variable del sistema optimizer_switch. Por TEMPTABLE, el texto de una sentencia que hace referencia a la vista y la definición de vista se fusionan temporalmente. Por undefined, MySQL elige cuál algoritmo utilizar. Por MERGE, los resultados de la vista se recuperan en una mesa. A partir de la consulta de un evento:
SHOW EVENTS\G
*************************** 1. row ***************************
Db: myschema
Name: e_daily
Definer: jon@ghidora
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2018-08-08 11:06:34
Ends: NULL
Status: ENABLED
Originator: 1
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: Nombre del evento El usuario que creó el evento Nombre del la base de datos La zona horaria del evento. Dada la sintaxis de un trigger:
CREATE
[DEFINER = user ]
TRIGGER trigger_name
trigger_time trigger_event
ON tbl_name FOR EACH ROW [ trigger_order ]
trigger_body
trigger_time : { BEFORE | AFTER }
trigger_event : { INSERT | UPDATE | DELETE }
trigger_order : { FOLLOWS | PRECEDES }
other_trigger_name
Relaciona: Indica el tipo de operación que activa el disparador Requiere el privilegio TRIGGER Determina el contexto de seguridad Puede ser BEFORE o AFTER. Para prevenir un error, al eliminar un evento utilizaremos la cláusula [IF NOT EXISTS]: Falso Verdadero. A partir de la consulta de un evento:
SHOW EVENTS\G
*************************** 1. row ***************************
Db: myschema
Name: e_daily
Definer: jon@ghidora
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2018-08-08 11:06:34
Ends: NULL
Status: ENABLED
Originator: 1
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: La zona horaria del evento Muestra el tipo de repetición El evento es recurrente El número de intervalos que hay que esperar entre las
ejecuciones de eventos. Al crear un disparador, el parámetro trigger_event puede ser:
INSERT
UPDATE
DELETE Verdadero Falso. Veamos un ejemplo de consulta de un disparador:
mysql> SHOW TRIGGERS LIKE 'acc%'\G
*************************** 1. row ***************************
Trigger: ins_sum
Event: INSERT
Table: account
Statement: SET @sum = @sum + NEW.amount
Timing: BEFORE
Created: 2018-08-08 10:10:12.61
sql_mode:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,
NO_ZERO_IN_DATE,NO_ZERO_DATE,
ERROR_FOR_DIVISION_BY_ZERO,
NO_ENGINE_SUBSTITUTION
Definer: me@localhost
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: Tipo de operación por la que se activa el
disparador Es el nombre del disparador La sentencia ejecutada cuando se activa
el disparador La tabla para la que se define el
disparador. A partir de la consulta de un evento:
SHOW EVENTS\G
*************************** 1. row ***************************
Db: myschema
Name: e_daily
Definer: jon@ghidora
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2018-08-08 11:06:34
Ends: NULL
Status: ENABLED
Originator: 1
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: El número de intervalos que hay que esperar entre las
ejecuciones de eventos Estado del evento La zona horaria del evento Fecha y hora de inicio para un evento recurrente. A partir de la sintaxis de creación de un evento:
CREATE
[DEFINER = user]
EVENT
[IF NOT EXISTS]
event_name
ON SCHEDULE schedule
[ON COMPLETION [NOT] PRESERVE]
[ENABLE | DISABLE | DISABLE ON SLAVE]
[COMMENT 'string']
DO event_body;
schedule:
AT timestamp [+ INTERVAL interval] ...
| EVERY interval
[STARTS timestamp [+ INTERVAL interval] ...]
[ENDS timestamp [+ INTERVAL interval] ...]
interval:
quantity {YEAR | QUARTER | MONTH | DAY | HOUR |
MINUTE | WEEK | SECOND | YEAR_MONTH |
DAY_HOUR | DAY_MINUTE | DAY_SECOND |
HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}
Relaciona adecuadamente: Debe ser un identificador de MySQL válido con una longitud máxima de 64 caracteres Determina cuando, con qué frecuencia y por cuánto
tiempo se repite el evento Requiere el privilegio EVENT Hace que los privilegios requeridos dependan del user. Los disparadores que tienen el mismo evento y el tiempo de acción se activan en el orden en que se han creado: Verdadero Falso. Empareja adecuadamente en función del siguiente disparador:
CREATE TRIGGER inserir_moviment BEFORE INSERT ON movimiento
FOR EACH ROW SET @sum = @sum + NEW.quantitat; Crea un disparador Indica el tiempo de acción del trigger Indica el evento activador Se activa una vez por cada línea. Indica la o las correctas.
La cláusula definido puede ser: CURRENT_USER CURRENT_USER () c. 'user_name' @ 'host_name'. Indica la opción más correcta para trigger_event - INSERT El disparador se activa cada vez que una nueva fila se inserta en la tabla (mediante INSERT) Todos son correctos El disparador se activa cada vez que una nueva fila se inserta en la tabla (mediante REPLACE) El disparador se activa cada vez que una nueva fila se inserta en la tabla (mediante LOAD DATA). Pon en orden la sintaxis de eliminación de un disparador: [schema_name.] [IF_EXISTS] TRIGGER DROP trigger_name. Veamos un ejemplo de consulta de un disparador:
mysql> SHOW TRIGGERS LIKE 'acc%'\G
*************************** 1. row ***************************
Trigger: ins_sum
Event: INSERT
Table: account
Statement: SET @sum = @sum + NEW.amount
Timing: BEFORE
Created: 2018-08-08 10:10:12.61
sql_mode:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,
NO_ZERO_IN_DATE,NO_ZERO_DATE,
ERROR_FOR_DIVISION_BY_ZERO,
NO_ENGINE_SUBSTITUTION
Definer: me@localhost
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: Sentencia ejecutada cuando se activa el disparador Momento en que se activa el disparador El valor de sesión de la variable del sistema carat_set_client La fecha de creación Cuenta de usuario que creó el disparador. Completa los huecos de la sintaxis de la eliminación de una vista:
ALTER [ [ 1...] = {UNDEFINED | [ 2...] | TEMPTABLE}
VIEW [ 3... ] [(columnes)]
[ 4... ] sentencia_select
[WITH [ [ 5... ] | LOCAL] CHECK [ 6... ] 1... 2... 3... 4... 5... 6... Un trigger o disparador es un tipo especial de rutina almacenada que se activa o ejecuta cuando en una tabla hay un evento de tipo CREATE, ALTER o DROP Falso Verdadero. Ordene la sintaxis de creación de una vista correctamente:
[...]
[ [...] REPLACE]
[ALGORITHM = {[...] | MERGE | TEMPTABLE}]
[ [...] = user]
[SQL [...] { DEFINER | INVOKER }]
[...] view_name [(column_list)]
[...] select_statement
[WITH [ [CASCADED] | LOCAL] CHECK OPTION] [WITH [ [CASCADED] | LOCAL] CHECK OPTION] [UNDEFINED] [CREATE] [SECURITY] [OR] [AS] [CASCADED] [DEFINER] [VIEW]. A partir de la consulta de un evento:
SHOW EVENTS\G
*************************** 1. row ***************************
Db: myschema
Name: e_daily
Definer: jon@ghidora
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2018-08-08 11:06:34
Ends: NULL
Status: ENABLED
Originator: 1
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
Relaciona adecuadamente: El número de intervalos que hay que esperar entre las ejecuciones de eventos La zona horaria del evento Muestra el tipo de repetición El evento es recurrente. Cuando eliminamos un disparador podemos obviar el esquema (base de datos o schema_name), esto provocará la supresión del disparador en todos los esquemas Falso Verdadero. En la creación de una vista, el select_stament solo puede hacer referencia a tablas base. Falso Verdadero. Actualmente las tablas INFORMATION_SCHEMA o performace_schema son vistas, por lo tanto los disparadores se activan por cambios en estas tablas. Verdadero Falso. Ordene la frase correctamente:
[...] [...] insertar_movimento [...] [...] ON movimiento
[...] [...] SET @sum = @sum + NEW.cantidad; INSERT BEFORE EACH_ROW TRIGGER FOR CREATE.
|