为什么我无法在 MySQL 中使用 FAST_FORWARD 数据库游标?
Why I'm not able to use a FAST_FORWARD database cursor in MySQL?
如何在 MySQL 中使用 FAST_FORWARD
光标?我已经阅读了文档并查看了代码示例,但是当我尝试在 MySQL 8 中 运行 它时它不起作用。
我需要遍历具有多行的 table。我有一个工作存储过程可以满足我的需要,但速度很慢,我想通过使用 LOCAL FAST_FORWARD
游标来提高性能。当我将游标声明更改为 LOCAL FAST_FORWARD
时,出现以下错误:
"LOCAL" is not valid at this position, expecting : FOR
如果我从游标声明中删除单词 LOCAL
,我会收到以下错误:
Extraneous input "FAST_FORWARD" found, expecting : FOR
在我看来,那些词不属于游标的声明,但我想不通。我在官方文档中找不到关于这个问题的任何信息,上网搜索也是徒劳。
DECLARE salesCursor CURSOR LOCAL FAST_FORWARD FOR
SELECT Sales, Price, Cost, SalesDate, SKULocationID FROM aver.sales
WHERE SalesDate <= firstSaleDate
ORDER BY SalesDate DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1;
LOCAL
和 FAST_FORWARD
是 SQL-Server 游标选项,它们不存在于 MySQL 中。据我所知,在 MySQL.
中没有与它们等效的东西
如何在 MySQL 中使用 FAST_FORWARD
光标?我已经阅读了文档并查看了代码示例,但是当我尝试在 MySQL 8 中 运行 它时它不起作用。
我需要遍历具有多行的 table。我有一个工作存储过程可以满足我的需要,但速度很慢,我想通过使用 LOCAL FAST_FORWARD
游标来提高性能。当我将游标声明更改为 LOCAL FAST_FORWARD
时,出现以下错误:
"LOCAL" is not valid at this position, expecting : FOR
如果我从游标声明中删除单词 LOCAL
,我会收到以下错误:
Extraneous input "FAST_FORWARD" found, expecting : FOR
在我看来,那些词不属于游标的声明,但我想不通。我在官方文档中找不到关于这个问题的任何信息,上网搜索也是徒劳。
DECLARE salesCursor CURSOR LOCAL FAST_FORWARD FOR
SELECT Sales, Price, Cost, SalesDate, SKULocationID FROM aver.sales
WHERE SalesDate <= firstSaleDate
ORDER BY SalesDate DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1;
LOCAL
和 FAST_FORWARD
是 SQL-Server 游标选项,它们不存在于 MySQL 中。据我所知,在 MySQL.