DELIMITER $$ CREATE /*[DEFINER = { user | CURRENT_USER }]*/ TRIGGER `pdhmanagementsys`.`tri_devlist_insert` AFTER INSERT ON dev_list FOR EACH ROW BEGIN DECLARE done INT DEFAULT 0; DECLARE DAttributeName VARCHAR(20); DECLARE DAttribute_ID INT; DECLARE DRemark VARCHAR(50); DECLARE mycursor CURSOR FOR SELECT `Attribute_ID`,`Dev_Attribute`,`Dev_Remark` FROM `device_attribute` WHERE `Dev_Type` =new.`Dev_Type`; DECLARE EXIT HANDLER FOR NOT FOUND CLOSE mycursor; //这里需加 否则会多出一行 OPEN mycursor; REPEAT FETCH NEXT FROM mycursor INTO DAttribute_ID,DAttributeName,DRemark; BEGIN INSERT INTO `device_value` (`Device_ID`,`RMUID`,`AttributeID`,`Attribute`,`Remark`) VALUES(new.ID,new.`RMU_ID`,DAttribute_ID,DAttributeName,DRemark); END; UNTIL 0 END REPEAT; //这里需加 否则会多出一行 CLOSE mycursor; END$$ DELIMITER ;