我正在使用Oracle APEX根据数据加载定义为我们的用户提供CSV文件上载功能。除了传统的数据映射之外,我还从视图wwv_flow_files
中抓取了BLOB列并将其保存到另一个表中,因此用户始终可以在以后重新下载上传的文件。
现在我们的测试环境已升级到APEX 5.1,此选项不再适用。视图wwv_flow_files
中没有相应文件上传的条目。视图apex_application_files
也不包含其中一个。应用程序兼容性模式设置没有帮助。
还有其他方法可以抓住BLOB吗?
安装的APEX版本为5.1.2.00.09。 Oracle数据库版本是12.1.0.2.0企业版。
答案 0 :(得分:3)
自APEX 5.0起,文件上载功能已从使用WWV_FLOW_FILES
表更改为APEX_APPLICATION_TEMP_FILES
。新表格的附加属性为"Purge at"
,其值为"End of request"
和"End of session"
。因此开发人员不必再关心清理WWV_FLOW_FILES
表了。
数据加载没有在APEX 5.0中使用该新功能,而是使用APEX 5.1移动到那里。这就解释了为什么你不再看到WWV_FLOW_FILES
表中的文件了。
暂停上传文件的最佳方法是在custom PL/SQL process - "copy_blob"
进程之前在"Data Load Source"
页面上放置"Parse Uploaded Data"
。该过程中的代码将BLOB从APEX_APPLICATION_TEMP_FILES
(!)复制到您自己的表中。