Oracle 10g 带参数的游标 Error
Posted
技术标签:
【中文标题】Oracle 10g 带参数的游标 Error【英文标题】:Oracle 10g A cursor with parameter Error 【发布时间】:2014-04-25 11:52:38 【问题描述】:我不明白为什么会出现此错误。我有表格,但代码示例无法正常工作。这里有什么问题?
DECLARE
CURSOR c_cust(p_city VARCHAR2) IS
SELECT * FROM cust WHERE cust.city=p_city;
v_cust c_cust%ROWTYPE;
v_city c_cust%TYPE;
BEGIN
v_city := 'London';
OPEN c_cust (v_city);
LOOP
FETCH c_cust INTO v_cust;
EXIT WHEN (c_cust%NOTFOUND);
DBMS_OUTPUT.PUT_LINE (v_cust.cname || ' has ' || v_cust.rating);
END LOOP;
IF (c_cust%ISOPEN) THEN CLOSE c_cust;
END;
ORA-06550:第 15 行,第 4 列:PLS-00103: 遇到符号“;” 预期以下情况之一时:如果
声明 CURSOR c_cust(p_city VARCHAR2) 是 SELECT * FROM cust WHERE cust.city=p_city;**
【问题讨论】:
"Oracle 无法正常工作" 是一个很好的声明... 是 :) 编辑了线程名称。 【参考方案1】:c_cust%ISOPEN
应该在结束循环之前;
If .... then
....
end if;
如果你错过了结局;
【讨论】:
以上是关于Oracle 10g 带参数的游标 Error的主要内容,如果未能解决你的问题,请参考以下文章