このコードにカーソルを挿入するとどのようにパフォーマンスが向上するのですか? データをフェッチするために動的なplsqlを使用する必要がありますが、INSERTを最適な方法で改善する方法はわかりません。バルクインサートのような? 可能であれば、コード例でお知らせください。挿入カーソルのパフォーマンスが向上しますか?
//これは私がcur_handleを使用する方法である:
cur_HANDLE integer;
cur_HANDLE := dbms_sql.open_cursor;
DBMS_SQL.PARSE(cur_HANDLE, W_STMT, DBMS_SQL.NATIVE);
DBMS_SQL.DESCRIBE_COLUMNS2(cur_HANDLE, W_NO_OF_COLS, W_DESC_TAB);
LOOP
-- Fetch a row
IF DBMS_SQL.FETCH_ROWS(cur_HANDLE) > 0 THEN
DBMS_SQL.column_value(cur_HANDLE, 9, cont_ID);
DBMS_SQL.COLUMN_VALUE(cur_HANDLE, 3, proj_NR);
ELSE
EXIT;
END IF;
Insert into w_Contracts values(counter, cont_ID, proj_NR);
counter := counter + 1;
END LOOP;
なぜカーソルに動的SQLを使用する必要があると思いますか?私たちがあなたに役立つことを望むなら、ユースケースを説明する必要があります。 – APC
Becouse selectステートメントは、ユーザーがより詳細な検索を含むように選択してからselectステートメントが変更され、結果が最終的に異なって見える場合など、Webサイトから組み立てられます。アプリケーション全体は、dinamic plsqlコード上に構築されたWebサイトです。 – Haris