• 沒有找到結果。

第三章 教學知識管理系統平台分析與設計

第四節 資料庫設計

本研究評估經費成本、網路系統效能、穩定性與維護便利性,決定使用開 放式的自由軟體 Mysql 作為教學知識管理系統平台之資料庫系統。並將系統平台 建置在 LAMP 的基礎下,也就是利用 Linux、Apache、MySQL 與 PHP/Perl,以 資料庫而言,目前坊間流行的資料庫模式為關聯式資料庫,常見的關聯式資料庫 的軟體如 Oracle、Informix、Sybase、SQL Server 與 Mysql,從應用上來看,資料 庫就是把資料看成是一些群彼此有關聯的表格,這些資料具有某種特殊結構以供 應用程式處理,以下針對系統平台資料庫作說明。

首先,Mysql 資料庫屬於關聯式資料庫(Relational Database),關聯式資料 庫是邏輯設計的一種方式,採用個體-關係圖(E-R; Entity Relationship Diagram 或 ERD〉來輔助資料庫的分析,ERD 主要的元素包括實體、關聯與屬性,其表 示方式如方塊代表實體,如帳號、姓名、父代碼、類別等,其中欄位(item_id〉、

(item_name 〉、(item -parent_codeid〉、(item -kind〉分別代表著不同實體的主鍵,

其餘的欄位則代表著實體的屬性,藉著 PHP 程式設計 SQL 的語言與資料庫作溝 通。

其中與資料庫溝通方面最重要的元件即是 ADODB (Active Data Objects Data Base),亦即 PHP 存取資料庫的函式元件。目前 ADODB 支援的資料庫種 類非常地多,例如:MySQL、PostgreSQL、Interbase、Informix、Oracle、MS SQL 7,Foxpro、Access、ADO、Sybase 與 DB2 其功能類似 WINDOWS 系統之 ODBC,

使用上相當普及。

採用 ADODB 最大的優點之一是:不管後端資料庫如何,存取資料庫的方 式都是一致的,開發設計人員不必為了某一套資料庫,而必須再學習另一套不同 的存取方法,這大大減輕開發人員的知識負擔,過去所開發的系統,往後仍可繼 續使用,轉移資料庫平台時,程式碼也不必做太大的更動,這樣將提高系統維護 的便利性。此為本研究採用 ADODB 為存取控制資料庫的重要原因。

本研究系統程式語言方面採用 PHP 語言,亦即 Hypertext Preprocessor ,是

一種伺服端(server-side〉,跨平台(cross-platform〉,它主要被廣泛運用在網頁 程式撰寫的語言,能適用於網頁程式的開發及能夠嵌入 HTML 文件之中,它的 語法和 C、Java 及 Perl 等語法相似,是一種易於學習的 HTML 嵌入式非編譯性 語言(HTML embedded scripting language〉。它通常以模組(module〉的形式和 Apache 伺服器結合,提供多種連結資料庫的介面,如 MySQL,PostgreSQL,

Sybase ,Informix,InterBase 等,其系統資料庫架構如圖 3-4。

圖 4- 1 教學知識管理系統資料庫架構 資料來源:研究者修改自羅崑崙等(1998〉

A D O D B 函 式 介 面

MySQL SERVER

處 理 查 詢 工 作 的 軟 體 或 程 式

存 取 資 料 庫 的 軟 體

儲存資料庫定義

(meta-data〉

儲存資料庫

使用者或程式設計師

資料庫系統 應 用 程 式 或 查 詢

本研究採用 PHP+Mysql 將能夠開發出符合教學知識管理系統平台之資料

glbsetup 整體設定

module_discuss_topics dkweb 討論區主題

moddiscuss dkweb 討論區主題

藉由 PHP 程式建立資料庫與資料表,控制各資料庫與資料表之關連性,提 供資料表所關連之屬性如新增、刪除、修改、編修、邏輯運算、索引與排序等功 能,期望建構符合中小學教學知識管理平台所需之資料庫系統。