第四章 系統建置
第三節 系統資料庫
國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖 4-3 系統流程圖
第三節 系統資料庫
整體系統運行分為三個部份,首先客戶端電腦僅負責輸入資料與輸出顯示,
並不負責主要資料運算與儲存。真正的資料運算是由雲端伺服器負責,包含計算 交通路徑、資料庫連結、資料結構化等工作,最後伺服器會將資料存至雲端資料 庫。如此一來,資料將結構化的存入雲端資料庫,讓網頁介面端與行動應用端兩 者實現資料整合同步(詳見圖 4-4)。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖 3-4 雲端資料架構
資料庫之實體關係圖(Entity-relationship diagram, ERD)如圖所示(詳見圖 4-5)。基本的使用者資料表 User 有 ID、使用者名稱與密碼欄位,而系統提供之 景點資料儲存於 Travel_list 之中,欄位包含了 ID、名稱、地址、類型與景點網址,
以及一欄 user_id 辨別是否為使用者自定義之地點。行程表之資料儲存於 Schedule 資料表,有天數欄位,以及景點與使用者之 ID 與欄位與其他資料表連結。類型 資料表 Type 則與 Travel_list 資料表連結,提供景點類型的資料。備註則由獨立 的資料表 Note 處理,包含了 user_id、ID 與備註內容三個欄位。
雲端 資料庫
雲端 伺服器
客戶端
電腦
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖 4-5 實體關係圖(Entity Relationship Diagram)
針對資料庫與功能之間的運作分為寫入、查詢、刪除與更新四種方式,主要 有八項功能與資料庫有關連(詳見圖 4-6),以下將解釋資料庫與各項功能之互 動:
圖 4-6 資料庫運作圖
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
1. 加入景點至行程:使用者主要是從網站端將景點加入行程,加入完成後系統 會即時更新行程表資料,並且將資料寫入資料庫當中(詳見圖 4-7)。
圖 4-7
2. 新增自訂地點:使用者可以於網站端新增自定義之地點,新增地點完成以後,
會自動更新景點列表之資料,並且寫入資料庫當中(詳見圖 4-8)。
圖 4-8
3. 刪除行程:無論是網站端與行動應用端使用者都可以從行程表當中移除行程,
此時系統即時更新行程表之資料,並且將更新後資料存於資料庫(詳見圖 4-9)。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖 4-9
4. 路徑規劃:使用者可以查詢行程表各景點之間的交通資訊,從資料庫讀取行 程表資料之後,利用 Google Maps API 之功能進行路徑規畫。網站端與行動 應用端使用的 Google Maps API 不相同,但是資料來源皆來自相同資料庫(詳 見圖 4-10)。
圖 4-10
5. 查詢行程:當安排好行程之後,使用 App 可以查詢現有行程,此時會查詢 資料庫中之資料,顯示於 App 之行程表當中(詳見圖 4-11)。
圖 4-11
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
6. 變更行程:使用者可以編輯行程表,變更行程順序,變更完成後會即時更新 行程表資料,並且於資料庫更新資料(詳見圖 4-12)。
圖 4-12
7. 瀏覽景點資訊:對於行程表當中的每個景點,可以連結至景點介紹網站,此 時會查詢資料庫當中的網址資訊,並且移至該頁面(詳見圖 4-13)。
圖 4-13
8. 新增備註:App 提供備註功能,使用者可以新增備註,此時會更新備註資料,
寫入資料庫當中儲存(詳見圖 4-14)。
圖 4-14