• 沒有找到結果。

高雄花市資料庫現況與三階正規化分析

第四章 正規化階段:花卉資料庫三階正規化分析與設計

4.2 台灣五大花卉批發市場資料庫三階正規化分析

4.2.5 高雄花市資料庫現況與三階正規化分析

高雄花市目前的資料庫系統為參考其他四家花市的原始資料表後所建立的兩套資料 庫系統:一為 MYSQL 系統專門紀錄每日花卉拍賣交易資料,內含六張資料表;另一為 MSSQL 系統專門儲存歷史交易資料,內含六張資料表。在每日拍賣交易全部完成後確認 資料內容無誤或修正,立刻將當日 MYSQL 系統資料檔案轉入 MSSQL 系統,兩套資料庫 程式中分別利用程式語言撰寫資料表屬性之間的關聯性,意即實際上高雄花市資料庫只有 建立程式間的關聯性,而交易資料的處理狀況亦僅只用為檔案儲存功能,並無進行資料庫 三階正規化設計。除此之外,由於高雄花市將資料庫分成兩套系統,系統之中又建立許多 轉檔資料與備份資料,故資料庫系統中有很多重複出現與存放的資料內容,不僅相當耗費 記憶體空間在資料新增修改上亦非常繁複且容易遺忘或出錯。

下列六張資料表為目前高雄花卉批發市場在 MYSQL 資料庫中存放當日交易資料的原 始資料內容:表 4.18 為當日承銷人基本資料表,內容僅包含與當日交易有關的承銷人卡 號、可用額度等資料而非承銷人住址、電話等個人資料;表 4.19 為當日交易資料表,存放 當日所有成交與未成交的交易資料,包含拍賣序號、拍賣日期、成交與否、承銷人代號、

花卉代號、價格、數量等資料;表 4.20 為當日拍賣進貨表,紀錄當日供應人進貨資料表內 容,包括進貨序號、供應代號、花卉代號、件數、底價、等級、昨日價格等資料;表 4.21 為當日供應商總量表,紀錄當日供應商代號與該供應人的供應件數;表 4.22 為當日花卉 表,紀錄當日供應花卉的花卉代號、平均價格等資料,可提供建立當日行情報表;表 4.23 為花卉等級對照表,紀錄等級代號與名稱。

表 4.18 當日承銷人基本資料表

表 4.19 當日交易資料表

表 4.20 當日拍賣進貨表

表 4.21 當日供應商總量表

表 4.22 當日花卉表

表 4.23 花卉等級對照表

下列六張資料表為目前高雄花卉批發市場在 MSSQL 資料庫中存放當日交易資料的原 始資料內容:表 4.24 為承銷人基本資料表,目的在於紀錄承銷人的個人詳細基本資料表,

內容包含承銷人代號、身分證字號、電話、住址、銀行代號、每月承銷金額等資料;4.25 為當日花卉表,表 4.26 為花卉等級對照表,表 4.27 為交易資料表,表 4.28 為供應商基本 資料表,目的在於紀錄供應商的細目資料表,內容包含供應商代號、身分證字號、電話、

住址、銀行代號、產地代號、耕作面積等資料;表 4.29 為拍賣進貨資料表。而其中共有四 張資料表:表 4.25 當日花卉表、表 4.26 花卉等級對照表、表 4.27 交易資料表與表 4.29 拍 賣進貨資料表和 MYSQL 資料庫中的四張資料表:表 4.22 當日花卉表、表 4.23 花卉等級 對照表、表 4.19 當日交易資料表與表 4.20 當日拍賣進貨資料表互相重複,為內容完全相 同的資料表;在此可發現此兩套系統資料內容的重複性使致使用上的低效率與儲存空間的 資源浪費。

表 4.24 承銷人基本資料表

表 4.25 當日花卉表

表 4.26 花卉等級對照表

表 4.27 交易資料表

表 4.28 供應商基本資料表

表 4.29 拍賣進貨資料表

根據高雄花市的原始資料表格式,十二張原始資料表經由三階正規化分解法將可產生 如圖 4.8 共十一張資料表的關聯圖。高雄花卉三階正規化資料庫中的供應人資料表、承銷 人基本資料表、花卉資料表、花卉等級資料表、進貨資料表以及交易資料表等六個主要資 料表,可對應至原始切花交易資料中的供應商資料表、承銷人基本資料表、當日花卉資料 表、花卉等級對照表、拍賣進貨資料表以及交易資料表六個資料檔案。完成此六個主要的 資料表後,接著針對此六個資料表依據三階正規化分解法,將原始切花交易資料做進一步 資料分割,而後分割出其餘五個資料表。對拍賣資料表而言,它儲存切花的交易類別、交 易日期、交易金額、和交易數量等重要的交易資料。其中含有日期加上交易別序號和子序 號的主鍵,而外鍵有承銷商代號、供應商代號、花卉代號、花卉等級、交易進貨號和拍賣 線共六個。供應人資料表的主鍵為供應人代號,外鍵為供應鄉鎮代號,主要目的是儲存供 應人的基本資料。承銷人資料表儲存承銷人的基本資料,主鍵承銷人代號,外鍵為承銷區 域代號。進貨資料表儲存每日進貨供應資料,其主鍵為進貨交易號,外鍵則有供應人代號、

花卉代號、花卉等級共三個。

圖 4.8 高雄花卉資料庫三階正規化關聯圖

第五章 標準化花卉三階正規化資料庫的實作與測試

本章的主要目的是在比較所有的 IDEF1X 圖,制定出花卉批發市場共用的 IDEF1X 圖後 進行標準化花卉三階正規化資料庫的實作與測試。從第 4.2 節針對國內五家花卉批發市場 的資料庫三階正規化分析可得知花卉拍賣交易最重要的資訊內容繁雜,假使不建立資料庫 三階正規化,那麼每次拍賣資訊的紀錄勢必將耗費相當大的記憶體容量來儲存資料。此外 每當新增與修改拍賣資訊時勢必會耗費許多時間與資源在進行校正動作,又倘若需要搜尋 資料以進行統計或分析也將是件繁複困難的工作。而花卉交易資料庫除了三階正規化外,

還必須進行標準化工作,使致五家花卉市場不僅在交易資訊上能一統規格,更進一步促使 花卉資訊能達到經濟規模效益。本章共分為兩小節。第 5.1 節說明「花卉資料庫三階正規 化標準化規格設計」,第 5.2 節說明「花卉資料庫標準化流程」。

5.1 花卉資料庫三階正規化標準化規格設計

本節根據第 4.1 節說明設計階層(Design Layer)的概念,花卉資料庫設計首先從藍圖架 構的邏輯模型(Logical Model)到實體架構的實體模型(Physical Model)到最後應用架構的 SQL Server 資料庫模型(Database Physical Model)。而標準化花卉資料庫相當於一整套企業 規模的整體設計階層(Enterprise Design Layer),國內五家花卉市場則相當於標準化花卉資料 庫整體模型中的五套設計階層模型,如圖 5.1 所示,

圖 5.1 花卉資料庫設計階層圖

台北花卉 彰化花卉 台中花卉 台南花卉 高雄花卉

花 卉 資 料 庫 設 計

標準化花卉資料庫

而本節主要目的是進行花卉資料庫三階正規化之標準化規格設計。第 5.1.1 節說明「花 卉批發市場交易作業流程從 IDEF0 到 IDEF1X 規格」的整合方法;第 5.1.2 節說明「標準 化花卉三階正規化資料庫規格」的設計方法。

5.1.1 花卉批發市場交易作業流程從 IDEF0 到 IDEF1X 規格

設計標準化花卉交易資料庫時,首先根據第三章從花卉物流作業流程的 IDEF0 圖中萃 取交易資訊,進而透過合成法(Synthesis Algorism) 將 IDEF0 圖轉為 IDEF1X 規格,建立花 卉資料正規化系統(Normal System);此步驟相當於標準化花卉資料庫設計階層中的邏輯模 型(Logical Model)。

IDEF1X 規格代表資料庫基本表格的組成,其基本表格的上半部代表主鍵(Primary Key),下半部代表非主鍵。基本表格之間如果用實線連接則代表二階正規化;虛線連接則 Engineeing)、正規化(Normalization)、形式化(Formalization)到正向工程(Forward Engineeing) 等四個步驟,以系統化的方式取代了舊有的系統(Legacy System),系統架構如圖 5.2 所示 [12]。

Attribute System

Normal System

Formal System

Normalization Formalization

Legacy System

New System

Form-based Application

Reengineering

Relational Language-SQL Reverse

Engineerin

Forward Engineerin

SQL-based Proof

接著從五大流程動作中相關的物流與資訊流萃取資料屬性,並將這些屬性集合成一個 花卉交易作業流程資料屬性表(Attributes Pool);如表 5.1 所示,此轉換步驟稱為逆向工程 (Reverse Engineering)。屬性表形成後,必須刪除能由其他屬性推導而得的屬性,然後用功 能相依式子(Functional Dependency)來表達各資料屬性的相依性。

表 5.2 花卉交易作業流程最小覆蓋資料屬性表

圖 5.3 花卉交易作業流程資訊 IDEF1X 基本規格

5.1.2 標準化花卉三階正規化資料庫規格設計

本節設計標準化花卉三階正規化資料庫是以圖 5.3 建立花卉資料庫基本 IDEF1X 規格 之四張關聯式資料表為基礎,彙整第四章分析後的五家花卉資料庫,比較圖 4.6 台北花卉 IDEF1X 規格、圖 4.7 彰化花卉 IDEF1X 規格、圖 4.8 台中花卉 IDEF1X 規格、圖 4.9 台南 花卉 IDEF1X 規格、圖 4.10 高雄花卉 IDEF1X 規格,在資料表(Entity)、屬性(Attribute)與 資料規格(Type)三方面進行分析與整合,設計標準化花卉三階正規化資料庫。

在資料表方面,標準化花卉資料庫共有 12 張表,其分析與比較如表 5.3 所示,整合後 的標準化花卉資料庫張數與內容如表 5.4 所示。在屬性整合方面的分析比較與整合如表 5.5 所示。在資料規格方面則因為各花市資料規格不同而較為繁雜,其分析與比較如表 5.6 所 示,整合後的標準化花卉資料庫規格如表 5.7 所示。

表 5.3 五家花市資料表分析與比較

台北花市 彰化花市 台中花市 台南花市 高雄花市 原始資料表數 5 張 4 張 4 張 4 張 12 張 正規化資料表數 11 張 10 張 10 張 10 張 11 張

表 5.4 標準化花卉三階正規化資料庫

資料表張數 資料表內容

12 張

1. 供應人資料表 2. 供應行政區資料表 3. 供應縣市資料表 4. 承銷人資料表 5. 承銷地區資料表 6. 進貨資料表

7. 拍賣資料表 8. 拍賣線資料表 9. 花卉資料表 10. 花卉等級資料表 11. 花卉等級略表 12. 花市員工資料表

表 5.5 五家花市屬性分析與標準化整合

870202+0010101

主鍵編碼方式:

日期+序號+子序號 (長度 13) 例:

870202+00161+01

主鍵編碼方式:

850101+01000+01

主鍵編碼方式: 例:CJ5806 (台北貢寮農民)

主鍵編碼方式:

主鍵編碼方式:

圖 5.4 標準化資料庫的 IDEF1X 規格 表 5.8 標準化花卉資料庫與五家花卉資料庫比較表

資料表總數 屬性總數 資料規格相容性

標準化花卉資料庫 12 張 68 個 高

台北花卉資料庫 11 張 53 個 低

彰化花卉資料庫 10 張 50 個 低

台中花卉資料庫 10 張 49 個 低

台南花卉資料庫 10 張 49 個 低

高雄花卉資料庫 11 張 59 個 低

而分析花卉批發市場交易資料的原始資料表與三階正規化資料庫設計需求,由圖 5.4

而分析花卉批發市場交易資料的原始資料表與三階正規化資料庫設計需求,由圖 5.4