MySQL - проблема ограничения хранимой процедуры - PullRequest
0 голосов
/ 27 января 2011

Я написал хранимую процедуру в SQLYog в MySQL следующим образом:

РАЗДЕЛИТЕЛЬ $$

ПРОЦЕДУРА ОТМЕНЫ ЕСЛИ test. spUser $$

CREATE PROCEDURE test. spUser (IN start1 INT, IN limit1 INT)

BEGIN

выберите gi.id, gi.user_id, concat (concat (first_name, ''), last_name) как полное_имя из общего как gi, профиль как p, где gi.user_id = p.user_id ограничение start1, limit1;

END$$

DELIMITER;

Если я написал код вышето выдает ошибку нет.1064, и если я заменил лимит start1, limit1 на лимит 5,10, он будет работать правильно.

Как мне решить эту проблему?

1 Ответ

1 голос
/ 27 января 2011
drop procedure if exists list_users;

delimiter #

create procedure list_users()
begin
  set SQL_SELECT_LIMIT = 1;

  select * from users;

  set SQL_SELECT_LIMIT = DEFAULT;
end#

delimiter ;


select * from users;

+---------+----------+
| user_id | username |
+---------+----------+
|       3 | alpha    |
|       2 | bar      |
|       4 | beta     |
|       1 | f00      |
+---------+----------+
4 rows in set (0.00 sec)


call list_users();

+---------+----------+
| user_id | username |
+---------+----------+
|       3 | alpha    |
+---------+----------+
1 row in set (0.00 sec)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...