2013-05-30 75 views
1

我试图识别特定目录中的所有文件并删除它们。我知道这有一个Java过程,但我正在寻找一些纯PL/SQL。从Oracle存储过程中的目录中删除文件

如果我无法获取文件列表并删除它们,那么我不会介意删除/删除目录并重新创建它。如果有人能指导我,这将有很大的帮助。

+1

欢迎堆栈溢出:-)你见过http://oracle-documentation.com/plsql/browsing-directories-with-plsql?它表明,如果你想在不使用Java的纯PL/SQL中执行此操作,你可能会陷入困境。 –

+1

正如James所提到的那样,没有一个纯粹的PL/SQL方法来获取目录列表。当你在11g上时,可能值得看一下名为“外部表预处理器”的特性,这个特性在这个问题的顶部投票答案中提到过:http://stackoverflow.com/questions/3529273/how-to-move-a -text文件 - 使用甲骨文。后者又提到了这篇文章:http://www.oracle-developer.net/display.php?id=513 –

回答

1

我已经使用了以下不久以前,它的工作对我非常好

http://plsqlexecoscomm.sourceforge.net/

它是那么容易,因为这

select os_command.exec_clob('/bin/ls -la /home/oracle') COMMAND from dual 

你可以写一个PL/SQL例程扫描逐行通过ls命令的接收到的clob并发出一个rm shell命令。