使用oracle带参数游标问题

GOODS 商品表图片说明

已有数据:
图片说明

CATEGORY表图片说明

已有数据图片说明

PL/SQL 代码:
DECLARE
V_GOODS GOODS%ROWTYPE; --存放商品表记录
V_CATEGORYID CHAR(32); --商品类别ID
/*根据指定商品类别ID查询出该类别下商品价格最低的商品记录*/
CURSOR CUR_GOODS(CATEGORYID VARCHAR) IS SELECT * FROM
(SELECT * FROM GOODS G WHERE G.CATEGORYID=CATEGORYID ORDER BY G.PRICE ASC)
WHERE ROWNUM<2;
BEGIN
V_CATEGORYID:='3f3a26cc227048a2b703de4b7581amkd';
OPEN CUR_GOODS(V_CATEGORYID);
FETCH CUR_GOODS INTO V_GOODS;
IF CUR_GOODS%FOUND THEN
dbms_output.put_line(V_GOODS.GOODSNAME||','||V_GOODS.PRICE||','||V_GOODS.CATEGORYID);
END IF;
CLOSE CUR_GOODS;
END;

个人觉得应输出:Galaxy s4,4000.25,3f3a26cc227048a2b703de4b7581amkd
实际输出:李宁运动服,250.36,3f3a26cc227048a2b703de4b7581dmku
为什么呢?
在你们的电脑里测试会输出什么呢?

1个回答

CATEGORYID变量名与字段名一直,不认为是变量名,改一下变量名吧

 SELECT * FROM GOODS G WHERE G.CATEGORYID=CATEGORYID  
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐