Oracle Apex 實用筆記系列 2,oracleapex

來源:互聯網
上載者:User

Oracle Apex 實用筆記系列 2,oracleapex
1. 頁面設計

頁面A有若干region, 其中一個region用於檔案清單管理(包括顯示,下載,刪除),A。在頁面A有一button,點擊它會調用頁面B,頁面B負責檔案上傳,B。

圖A


圖B


2. 資料庫表設計
File
FILE_ID           Number,
FILE_DESC    Varchar2(256),
CONTENT  Blob,
mime_type varchar2(256),
char_set     varchar2(256),
last_update date,
FILE_NAME  varchar2(256)


3. Apex實現3.1 在頁面A擷取上傳檔案清單可建立一個classic report region, region source是
select f.FILE_ID,
f.FILE_DESC,
f.FILE_NAME,
dbms_lob.getlength("FILE_CONTENT") as FILE_CONTENT,
MIME_TYPE,
CHAR_SET,
LAST_UPDATE,
'<a href="javascript:$s(''P530_DELETE_FILE'', ''' || F.FILE_ID || ''');">Delete</a>' as DELETE_FILE
from FILE f

注意:由於BLOB不能直接映射成頁面元素,所以適用dbms_lob.getlength函數得到blob的大小作為預留位置。
在報告屬性(Report Attribute)標籤,點擊FILE_CONTENT進入該cloumn的設定:1. Number/Date Format選擇Blob;2. Format Mask:Download;3. Blob Table: FILE4. Blob Column: FILE_CONTENT5. Primary Key Column 1: FILE_ID;6. Mimetype Column: MIME_TYPE;7. FIlename Column:FILE_NAME;8. Last Updated Column: LAST_UPDATE;9. Character Set Column: CHAR_SET;10. Download Text: Download
3.2 頁面B上傳檔案使用頁面B作為一個單獨頁面上傳的一個原因是Apex無法在一個頁面建立多個Form on a Table,換句話說,Apex的一個頁面只能建立一個Form on a Table。建立Form on a Table頁面的好處是可以由Apex協助我們管理表格的插入,更新的細節。所以頁面B的建立只要跟著Apex建立Form on a Table嚮導一步一步走就可以了。
在修改FILE_CONTENT對應的item時,display as: 選File Brows在它的setting標籤中,1. Storage Type:Blob column specified in Item Source attribute;2. Mimetype Column: MIME_TYPE;3. FIlename Column:FILE_NAME;4. Last Updated Column: LAST_UPDATE;5. Character Set Column: CHAR_SET;

在Storage Type中,另一個選項是Table WWV_FLOW_FILES,這是Apex內建的一個用於檔案上傳的表。這是Apex老版本的做法,為了向後相容而保留。如果選擇這個選項,不同application的所有檔案上傳功能都會發到這個表,筆者認為這樣檔案管理會有些混亂,傾向建立自己的資料庫表來管理。



ORACLE APEX

請用WITZARD,有一個下拉選項
 
Oracle APEX中文手冊

這個真沒有
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.