Используя сценарий PLSQL, действительно ли возможно выполнить итерации по двоичным файлам в папке и вставить их как BLOB в Oracle 10 г? Любые примеры ценились бы.
Преобразование содержимого файла в блоб рассматривается здесь: Используя PL/SQL, как мне получить содержимое файла в блоб?
Однако это не поможет вам выполнить итерацию по нескольким файлам в каталоге.
Два возможных решения:
SYS.DBMS_BACKUP_RESTORE.searchFiles
Вы можете передать этой процедуре свои критерии поиска, и она заполнит глобальную таблицу в памяти списком результатов, по которым вы затем можете выполнять итерацию, как показано ниже:
DECLARE
pattern VARCHAR2(1024) := '/u01/oracle/admin/SID/udump';
ns VARCHAR2(1024);
BEGIN
SYS.DBMS_BACKUP_RESTORE.searchFiles(pattern, ns);
FOR each_file IN (SELECT FNAME_KRBMSFT AS name FROM X$KRBMSFT WHERE FNAME_KRBMSFT LIKE '%.trc') LOOP
DBMS_OUTPUT.PUT_LINE(each_file.name);
END LOOP;
END;
/
Смотрите полный пример с отличным объяснением здесь.
Великий Том "AskTom" Кайт показывает, как выполнять итерацию по файлам с помощью процедуры Java здесь.