Bonjour à tous,

J'ai une procédure stoquée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
CREATE  PROCEDURE `NewsListGet`(
    IN _level INT
)
BEGIN
 
        SELECT
        SQL_CACHE
            id,
            titre,
            message,
            date_post,
            date_edit,
            auteur
        FROM news
        WHERE publish = 1 AND acces <= _level
        ORDER BY date_post;
END
et je dois la concaténer avec un limit je ne savais pas trop faire, donc je me suis inspirer d'exemple que j'ai trouvé, j'ai donc fait comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
CREATE PROCEDURE `NewsListGet`(
    IN _level INT,
    IN _start INT,
    IN _nbpage INT
)
BEGIN
    SET @level = _level;
    SET @LIMIT = CONCAT('LIMIT ', _start,',',_nbpage,';');
 
    SET @SQL = CONCAT('
        SELECT
        SQL_CACHE
            id,
            titre,
            message,
            date_post,
            date_edit,
            auteur
        FROM news
        WHERE publish = 1 AND acces <= ',@level,'
        ORDER BY date_post
    ');
 
    SET @SQL = CONCAT(@SQL, @LIMIT);
 
    PREPARE rp FROM @SQL;
    EXECUTE rp;
    DROP PREPARE rp;
 
END
mais plus rien ne fonctionne

quelqu'un pourrait m'expliquer ?