DELIMITER $$
CREATE FUNCTION `pysxcx`(wz varchar(50)) RETURNS varchar(50) CHARSET utf8mb3
DETERMINISTIC
BEGIN
set @i=1;
set @mcsx='';
set @len=char_length(wz);
while
(@i<=@len)
do
set @hz=substr(wz,@i,1);
select jp into @jp from hzpyb where hz=@hz;
set @mcsx=concat(@mcsx,@jp);
set @i=@i+1;
end while;
return @mcsx;
END $$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER `pysxcx` BEFORE UPDATE ON `tb_hpxxb` FOR EACH ROW BEGIN
set new.`mcsx`=pysxcx(new.`hpmc`);
END $$
DELIMITER ;