1

以下は、テーブルからハイスコアのリストを取得する SP を作成するコードです。MySQL は、ストアド プロシージャを使用せずにテーブルでクエリを正常に実行できるにもかかわらず、ストアド プロシージャを作成できず、構文をチェックすることができないと私に言い続けます。どんな助けでも大歓迎です

USE `froggame`;
DROP procedure IF EXISTS `sp_GetHighScores`;
DELIMITER $$
USE `froggame`$$
CREATE PROCEDURE `froggame`.`sp_GetHighScores` (
IN p_StartFrom     INT)
BEGIN
SELECT
    h.PlayerName,
    h.Score,
    h.Accuracy,
    h.TimePlayed,
     @rownum := @rownum + 1 as Rank
FROM
    HighScores h
    JOIN
        (SELECT @rownum := 0) r
ORDER BY
    h.Score DESC
LIMIT 50 OFFSET p_StartFrom;
END
$$
DELIMITER ;

ありがとう、

デイブ

4

1 に答える 1

0

SQL をコピーしたところ、Mysql 5.5 で動作します。mysql にはどのようなエラーが報告されていますか? (テストには HeidiSQL 7 を使用しています)

于 2012-06-27T01:43:30.913 に答える