0

2 つのパラメーターを持つプロシージャを作成しています。1 つはタイプ SYS_REFCURSOR (OUT param) の p_cursor で、もう 1 つはタイプ INT (IN param) の p_rank です。しかし、それはエラーを示しています。

DELIMITER $$
CREATE  PROCEDURE sp_student(p_cursor OUT SYS_REFCURSOR,p_rank IN INT) 
    BEGIN
    OPEN p_cursor FOR SELECT  * FROM student WHERE   rank = p_rank;
    END$$
DELIMITER ;

私が得ているエラーは、

Error Code : 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OUT SYS_REFCURSOR,p_rank IN INT) 
    BEGIN
    OPEN p_cursor FOR SELECT  * FROM st' at line 1

SYS_REFCURSOR の構文が間違っていると思います。コードを確認して、間違いを認識させてください。前もって感謝します

4

1 に答える 1