Muy buenas. Estoy trabajando con sugarcrm y hay cosas que las hago directamente en base de datos.
Mi duda viene cuando intento crear un trigger en mysql 5.1 y me da el error 1064.
El codigo es el siguiente y no sé que es lo que tengo mal.
Código:
CREATE TRIGGER ACT_CENTROS AFTER INSERT on sugartest.citas_citas_nominales
FOR EACH ROW
BEGIN
DECLARE cur1 CURSOR for select id_centro from sugartest.citas_citas_nominales group by id_centro;
DECLARE ausencias,citas_totales_centro,asistencias INT(10);
for centros in cur1
ausencias:=select count(*) from sugartest.citas_citas_nominales where estado='Ausencia' and id_centro=centros.id_centro;citas_totales_centro:=select count(*) from sugartest.citas_citas_nominales where id_centro=centros.id_centro;
asistencias:=citas_totales_centro-ausencias;
update sugartest.citas_centros set num_ausencias=ausencias,num_citas_totales=citas_totales,num_asistencias=asistencias where citas_centros.id=centros.id_centro;
end loop;
END;
Lo que quiero haces es cada vez que se inserte un registro en la tabla1 se actualice en la tabla2 otros valores.
Qué tengo mal y qué puede estar ocurriendo?