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