ファイル名に基づいてテーブルからレコードをフェッチするカーソルがあります(ファイル名は配列から渡されます)。ファイル名がテーブルに複数回存在する場合、duparrayにそのような回数だけファイル名を追加する必要があります。PLSQL:カーソルの行カウントを取得し、カウントに基づいて配列に追加する
たとえば、test2.txtが2回存在し、test3.txtが3回存在する場合、duparrayを {test2.txt、test2.txt、test3.txt、test3.txt、test3}とする必要があります。 txt}
しかし、私はROWCOUNT> 1のチェックをしているので、duparrayは {test2.txt、test3.txt、test3.txt}となっています。
このチェックがない場合は、テーブルに1回だけ存在するファイル名も追加されます。私はそれを修正する必要があります助言してください。
手順インサイドCURSOR duplicateData IS
SELECT file_name from tablename where file_name=p_filearray(i)
dupRow duplicateData%rowtype;
:
OPEN duplicateData ;
loop
fetch duplicateData INTO dupRow;
EXIT WHEN duplicateData %NOTFOUND;
IF duplicateData %ROWCOUNT >1
THEN
p_duparray.EXTEND;
p_duparray(p_duparray.LAST):=dupRow.file_name;
END IF;
end loop;
CLOSE duplicateData ;