APEX 5文件浏览器apex_application_temp_files表为空

问题描述 投票:0回答:1

当我在APEX 5上创建一个页面来上传文件时,apex_application_temp_files是空的,它不允许我将文件插入我的自定义表中。

我有这个作为我的代码

INSERT INTO custom_table(
     name,
     filename,
     mime_type,
     content,
     file_type,
     file_description,
     upload_by,
     upload_date)
     SELECT name, 
         filename,
         mime_type, 
         blob_content,
         :P1_FILETYPE,
         null,
         :APP_USER,
         sysdate
FROM apex_application_temp_files
WHERE 1=1
AND name = :P1_FILEBROWSER;

当我单击我的按钮时,表没有值。单击按钮UPLOAD时,我正在动态动作上执行pl / sql代码。

我试着看看动态动作是否有效,但是如果apex_application_temp_files表上没有任何内容,我不知道如何从文件浏览器中获取文件名,mime类型和名称。

请参阅下面的代码,但它没有得到名称,文件名和mime类型。

我怎样才能解决这个问题?

INSERT INTO custom_table(
     name,
     filename,
     mime_type,
     content,
     file_type,
     file_description,
     upload_by,
     upload_date)
     values ( 'name', 
     'filename',
     'mime',
     :P1_FILEBROWSER,
     :P1_FILETYPE,
         null,
         :APP_USER,
         sysdate
     );
oracle-apex oracle-apex-5 oracle-apex-5.1
1个回答
-1
投票

请尝试吹码

  for i in 1 .. v_arr.count
loop
    :p1_id := st_id.nextval;
    insert into custom_table(
                             id,
                             name,
                             content,
                             filename,
                             mime_type, 
                             file_type,
                             file_description,
                             upload_by,
                             upload_date)
    values (:p1_id, 
            (select name from apex_application_temp_files where name = v_arr(i)),
            (select blob_content from apex_application_temp_files where name = v_arr(i)),
            (select filename from apex_application_temp_files where name = v_arr(i)),
            (select mime_type from apex_application_temp_files where name = v_arr(i)),
            null,
            null,
            null,
            null
            );
end loop; 
© www.soinside.com 2019 - 2024. All rights reserved.