ファイルをアップロードするOracle Apexアプリケーションがあります。ファイルはP14_FILE_BROWSE項目によってロードされ、記憶域タイプはapex_application_temp_filesに設定されます。アップロードボタンは、次のPL/SQLコードが実行されると、プロセスが押された後:Oracle Apex:セッションの期限切れ後にBLOB列に格納されたファイルにアクセスできない
declare
begin
insert into files(
ID, NAME, FILENAME, MIME_TYPE, CONTENT)
select ID, NAME, FILENAME, MIME_TYPE, BLOB_CONTENT
from apex_application_temp_files
where name = :P14_FILE_BROWSE;
end;
私は、この表で報告書を作成したとカラムIDをURLリンクP N =#のID番号として定義されています?。このリンクでファイルをダウンロードできます。セッションが終了するまでうまく動作します。セッションの期限切れファイルにアクセスできない場合(ウェブページが見つかりません)しかし、あなたがここに見ることができるようにファイルがまだファイルテーブルに格納されています。
なぜ私のファイルは、pで何よりアクセスしていないN = ..セッション後に期限切れ?私は、Oracle Apex 5.1でOracle 12cを使用しています。
は、ドキュメントごととしてあなたに
"temp"は "temporary"を表します。アイデアはファイルの一時的な保持領域だということです。セッションが終了する前に別の場所にコピーする必要があります。 –
これで私はテーブル "ファイル"にデータをコピーします。 。他にも問題がありました。セッションの期限が切れた後は、pn = linkでアクセスできなくなりました。しかし、ダウンロードBLOBコンテンツの列タイプでデータにアクセスすることは問題ありません。 – john179