当我在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
);
请尝试吹码
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;