Mysql
 sql >> Base de données >  >> RDS >> Mysql

Quel est l'équivalent du REF CURSOR d'Oracle dans MySQL ?

MySQL n'a pas de refcursor comme Oracle. Si vous envisagez d'écrire une procédure stockée qui renvoie plusieurs lignes/ensemble de résultats dans MySQL, faites-le simplement

DROP procedure IF EXISTS `sample`;
DELIMITER $$
CREATE  PROCEDURE `sample`(p_rank IN INT)
BEGIN
select * from MyTable where id=p_rank;
END$$
DELIMITER ;

et appelez sample(); . Il renverra un ensemble de résultats que vous pourrez utiliser.