游标 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);
----- ----- -----
我试过 运行 这个游标,但我得到一个错误
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);
----- ----- -----