簡體   English   中英

MySQL-存儲過程限制問題

[英]MySQL - Stored Procedure limit issue

我已經在MySQL的SQLYog中編寫了一個存儲過程,如下所示:

分隔符$$

DROP PROCEDURE IF EXISTS test spUser $$

創建過程test spUser (IN spUser INT,IN limit1 INT)

 BEGIN 

從泛型中選擇gi.id,gi.user_id,concat(concat(first_name,''),last_name)作為全名,以gi作為配置文件,其中gi.user_id = p.user_id限制為start1,limit1;

 END$$ 

定界符;

如果我已經編寫了以上代碼,則拋出錯誤號。 1064,如果我將極限start1,limit1替換為極限5,10,則它可以正常運行。

我該如何解決這個問題?

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)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM