0
所以我真的不知道爲什麼我的光標不工作。選擇語句工作正常,所以我不知道爲什麼SQL服務器拋出錯誤。 For循環有一個隱式的打開和關閉,所以這也不應該是問題。有任何想法嗎?PL/SQL無效光標錯誤
DECLARE
var_lname customer.c_last%TYPE;
var_fname customer.c_first%TYPE;
var_addr customer.c_address%TYPE;
var_phone customer.c_dphone%TYPE;
CURSOR expl_cursor IS SELECT c_last, c_first, c_address, c_dphone from customer;
cust_record expl_cursor%ROWTYPE;
BEGIN
DBMS_OUTPUT.PUT_LINE('ClearWater Traders Mailing List');
FOR cust_record IN expl_cursor
LOOP
FETCH expl_cursor INTO cust_record;
var_lname := cust_record.c_last;
var_fname := cust_record.c_first;
var_addr := cust_record.c_address;
var_phone := cust_record.c_dphone;
DBMS_OUTPUT.PUT_LINE(var_lname || ' ' || var_fname || ' ' ||
var_addr || ' ' || var_phone);
END LOOP;
END;
這裏的錯誤:
ERROR位於第1行: ORA-01001:無效CUR ORA-06512:在第15行
是的。您正在混合兩種方式來循環遊標結果集。你明確地'打開'/'fetch' /'close',或者使用隱式'for ... in ... loop'版本。 [更多文檔資料](http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/static.htm#BABDHAED)。 –
+1 - 解決了自己的問題。 –
洛爾感謝鮑勃。 –