游标 PL/SQL 甲骨文

CURSOR PL/SQL ORACLE

我试过 运行 这个游标,但我得到一个错误

ERROR at line 7: ORA-06550: line 7, column 31: PLS-00357:

Table,View Or Sequence reference 'CATEGORY.CATEGORY_NAME' not allowed in this context

ORA-06550: line 7, column 1:

PL/SQL: Statement ignored

这是我使用的 pl/sql 语法:

DECLARE
CURSOR check_stock IS
select category.category_name, item.item_name, item_stock from category join item on category.id_category = item.id_category;
BEGIN
FOR stock IN check
LOOP
DBMS_OUTPUT.PUT_LINE(category.category_name ||' '||item.item_name ||' '|| item.stock);
END LOOP;
END;

有人可以解决这个问题吗?谢谢

您没有引用 table 名称,而是引用了游标变量:

DBMS_OUTPUT.PUT_LINE(stock.category_name ||' '||stock.item_name ||' '|| stock.stock);
                     -----                      -----                   -----