MySQL Forums
Forum List  »  Spanish

Trigger con campo dinámico
Posted by: LEANDRO AREVALO
Date: November 02, 2020 06:11AM

Hola buenos días para todos,

Como dice el encabezado, en este momento me surge la necesidad de actualizar datos pero usando un nombre del campo dinámico, Me explico

Tengo una tabla con los siguientes campos:
Tabla pedidos

id_pedido INT auto_increment
id_cliente INT
fecha_pedido DATE
id_ciudad INT

y otra tabla en donde se van sumando los pedidos del mes
Tabla resumen_pedidos_mes

Lo intento de la siguiente manera pero hasta ahora sin éxito

delimiter //
CREATE TRIGGER suma_pedido AFTER INSERT ON pedidos
FOR EACH ROW
BEGIN
DECLARE mesdb CHAR(5);
SELECT CONCAT("mes",month(NEW.fecha_pedido)) INTO mesdb;

UPDATE resumen_pedidos_mes SET mesdb=mesdb+1 WHERE id_cliente=NEW.id_cliente

END IF;
END;//
delimiter;

Me devuelve error de sintaxis

consecutivo INT auto_increment
id_cliente INT
mes1 INT
mes2 INT
mes3 INT
mes4 INT
.....
mes12 INT

Necesito crear un TRIGGER que al momento de insertar un registro en la tabla de resumen pedidos me sume 1 en el campo del mes correspondiente de la tabla resumen_pedidos_mes.
Lo que quiere decir que si agrego un pedido que tenga la fecha '2020-10-01' se debe sumar +1 en el mes Octubre de tabla de resumen_pedidos_mes.

Options: ReplyQuote


Subject
Views
Written By
Posted
Trigger con campo dinámico
124
November 02, 2020 06:11AM
46
November 02, 2020 06:16AM
46
November 02, 2020 10:34AM


Sorry, only registered users may post in this forum.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.