-1

我不断收到此错误:

#1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在 '_from 、 _rowcount ORDER BY id DESC 附近使用的正确语法;END' 在第 4 行

使用此查询:

CREATE PROCEDURE sp_works_selectcustom(IN _from int,IN _rowcount int)
BEGIN
   SET NAMES UTF8;
   SELECT id, title, time, price, discription, date
   FROM works
   LIMIT _from , _rowcount
   ORDER BY id DESC;
END$$

知道问题是什么吗?

4

2 回答 2

2

根据MySQL 中 SELECT 语句的文档, LIMIT 子句位于 ORDER BY 子句之后......

SELECT id, title, time, price, discription, date 
  FROM works
 ORDER BY id DESC 
 LIMIT _from , _rowcount 
于 2013-11-03T19:52:25.923 回答
1

您使用的是什么版本的 MySQL?

来自文档:13.2.9。选择语法

...

  • 在存储程序中,LIMIT 参数可以使用整数值例程参数或 MySQL 5.5.6 的局部变量来指定。

...

在 MySQL 5.5.32 工作中,请参阅SQL Fiddle,更改为版本 5.1.61 会产生错误。

于 2013-11-03T20:29:23.380 回答