我有一個遊標,它根據文件名從表中提取記錄(文件名從數組中傳遞)。現在如果文件名在表中不止一次出現,我需要將文件名添加到duparray這麼多次。PLSQL:獲取光標行數並添加到基於計數的數組
例如,如果test2.txt存在2次並且test3.txt存在3次,那麼我需要將dupray設置爲 {test2.txt,test2.txt,test3.txt,test3.txt,test3。 txt}
但是根據下面的代碼,duparray會作爲 {test2.txt,test3.txt,test3.txt},因爲我有ROWCOUNT> 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 ;