2016-10-28 34 views
0

我有9個不同的遊標與不同的SQL語句。PL/SQL調用一個變量遊標

但遊標for循環總是相同的。有沒有可能不寫9光標循環?

我的想法是

一個for循環,增加存儲在一個變量

的CursorName中和遊標循環與CursorName中的變量insteat。

,但它不工作

這就是我的遊標循環:

FOR rec IN abgl2_cur LOOP 
utl_file.putf(vFileHandle, 
       '<s3>\n<%s> %s</%s>\n<%s>%s', 
       c_grem,rec.gremium,c_grem,c_name,rec.name); 
    utl_file.putf(vFileHandle, 
       '</%s><%s>%s</%s>\n</s3>\n', 
       c_name,c_id,rec.id,c_id); 
    utl_file.fflush(vFileHandle); 
END LOOP; 
+0

將公共代碼移入過程? –

+0

不,它不起作用,我從文件中的光標寫入一些變量。它會拋出錯誤,當我聲明子程序,因爲光標不是int子程序 – Koche

回答

0

您需要的循環部分包與參數的過程/函數將指向上的光標是需要要運行。 然後用不同的參數調用程序9次。

如果你想要更多細節,你應該在這裏添加一些代碼來處理。

+1

感謝隊友它的作品 – Koche