DELIMITER $$ DROP PROCEDURE IF EXISTS `extractLocalGermplsm`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `extractLocalGermplsm`(IN localdb VARCHAR(50), IN centraldb VARCHAR(50)) BEGIN SET @getStmnt = CONCAT( 'insert into ',localdb,'.updategid (lgid) select a.gid from ',localdb,'.germplsm a where (((a.gid)<0) AND ((a.gpid1)>=0) AND ((a.gpid2)>=0) AND ((a.grplce)=0))'); PREPARE stmnt1 FROM @getStmnt; EXECUTE stmnt1; DEALLOCATE PREPARE stmnt1; SET @getStmnt = CONCAT( 'update ',localdb,'.germplsm a,',localdb,'.updategid b set a.gid=b.gid where (a.gid=b.lgid)'); PREPARE stmnt1 FROM @getStmnt; EXECUTE stmnt1; DEALLOCATE PREPARE stmnt1; SET @getStmnt = CONCAT( 'update ',localdb,'.progntrs a,',localdb,'.updategid b set a.gid=b.gid where (a.gid=b.lgid)'); PREPARE stmnt1 FROM @getStmnt; EXECUTE stmnt1; DEALLOCATE PREPARE stmnt1; SET @getStmnt = CONCAT( 'update ',localdb,'.germplsm a,',localdb,'.updategid b set a.gpid1=b.gid where (a.gpid1=b.lgid)'); PREPARE stmnt1 FROM @getStmnt; EXECUTE stmnt1; DEALLOCATE PREPARE stmnt1; SET @getStmnt = CONCAT( 'update ',localdb,'.germplsm a,',localdb,'.updategid b set a.gpid2=b.gid where (a.gpid2=b.lgid)'); PREPARE stmnt1 FROM @getStmnt; EXECUTE stmnt1; DEALLOCATE PREPARE stmnt1; END$$ DELIMITER ;