在PLSQL中迭代文件

在PLSQL中迭代文件,plsql,oracle10g,Plsql,Oracle10g,使用PLSQL脚本,是否可以迭代文件夹中的二进制文件并将其作为BLOB插入Oracle 10g?任何示例都将不胜感激。此处将介绍如何将文件内容转换为blob: 但是,这并不能帮助您迭代一个目录中的多个文件 有两种可能的解决方案: 解决方案1:SYS.DBMS\u BACKUP\u RESTORE.searchFiles 您可以将搜索条件传递给此过程,并使用结果列表填充内存中的全局表,然后您可以像这样进行迭代: DECLARE pattern VARCHAR2(1024) := '/u01/or

使用PLSQL脚本,是否可以迭代文件夹中的二进制文件并将其作为BLOB插入Oracle 10g?任何示例都将不胜感激。

此处将介绍如何将文件内容转换为blob:

但是,这并不能帮助您迭代一个目录中的多个文件

有两种可能的解决方案:

解决方案1:
SYS.DBMS\u BACKUP\u 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;
/
请参阅完整的示例,并提供出色的解释

解决方案2:Java 伟大的Tom“AskTom”Kyte展示了如何使用Java过程对文件进行迭代。

可能的重复