2016-10-28 3 views
0

私は異なるSQL文で9つの異なるカーソルを持っています。PL/SQL変数を持つカーソルを呼び出す

しかし、ループのカーソルは常に同じです。ループに9カーソルを書かない可能性はありますか?

私の考えでは、変数

に格納CURSORNAMEとCURSORNAMEの変数insteatでループのカーソルを高めるために、forループ

ました。

それはループのための私のカーソル厥

を動作しません:

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

関連する問題