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 ;
mysql 游标 多一行_mysql游标多出一行解决
最新推荐文章于 2021-08-27 14:36:14 发布
本文介绍了一个使用MySQL触发器实现设备属性值自动插入的解决方案。通过定义一个后插入触发器,当新的设备被加入到系统中时,该触发器会自动将设备的所有属性值插入到指定的数据表中,简化了数据录入过程并提高了效率。
3240

被折叠的 条评论
为什么被折叠?



