資料庫初體驗(2)
Tags: none 發表: 2008-03-24, 點閱: 6,832 , 加入收藏櫃 , 列印 , 轉寄 文/黃國倫
選擇適合的關聯式資料庫
有哪些關聯式資料庫可供選擇?
優點為何?限制為何?
目前市面上常見之關聯式資料庫有Microsoft Office Access、Oracle Database、Microsoft SQL Database、MySQL、PostgreSQL,基本上都具備關聯式資料庫基本功能,茲分別簡介如下:
● Microsoft Access
MS Office Access適合資料量小,需求不大之使用者。其單一表格可支援2GB資料量、支援基本的交易鎖定(Transaction Lock)、支援與MS Office套件作一些功能上的結合,更重要的是也支援SQL結構化查詢語言。但只支援255個使用者同時上線,無法使用預存程序(Store Procedure)或觸發(Trigger)…等功能,只能執行於MicrosoftWindows作業系統上,更多產品相關資訊可參考http://www.microsoft.com/access/。
● Oracle Database
商業資料庫,由專業資料庫廠商Oracle推出,一般常見功能皆具備,可說是目前市面上功能最齊全的資料庫。也因其功能眾多,其所提供之資料庫管理者介面相當複雜,甚至有些進階功能無法透過介面去管理,只能透過命令列(Command Line)方式進行設定,價格昂貴。其除可與Java做緊密結合,亦可於Linux、FreeBSD、MSWindows、Solaris…等作業系統上執行。更多產品相關資訊可參考http://www.oracle.com/database/。
● Microsoft SQL Database
與Oracle同樣為商業資料庫,由目前世界上最大軟體公司Microsoft推出,一般常見功能皆具備,價格上略比Oracle便宜。與Oracle不同之處在於,犧牲掉一些可讓資料庫管理人員自行微調的功能,以提供較友善之管理介面,其最大限制為,只能執行於MicrosoftWindows作業系統上。更多產品資訊可參考http://www.microsoft.com/sql/。
● MySQL
MySQL基本上秉持Open Source精神,個人及非營利單位可免費使用,若用於商業用途,收費也相當便宜,所收取的費用,主要是用來協助MySQL研發所需。自5.0版本起已正式支援View、Trigger、Procedure…等功能,MySQL雖沒有商用資料庫那麼多複雜的功能,但卻具穩定與容易使用的特性,可執行於Linux、FreeBSD、MS Windows…等作業系統,適合經費有限,但卻有簡單資料庫需求的個人或非營利事業使用。更多產品資訊可參考http://www.mysql.com。
● PostgreSQL
PostgreSQL也是屬於Open Source,由加州大學伯克利分校(University of California, Berkeley)計算機系所開發,不管是個人或營利單位皆可免費使用,且很早就支援子查詢、View、Trigger、Procedure…等功能。在早期MySQL無法支援這些功能時,對有這些功能需求,卻又受限於經費的個人或營利事業來說,是最佳選擇,可安裝於Linux、MS Windows、Solaris等作業系統。更多相關資訊可參考http://www.postgresql.org。
在選擇資料庫時,除了根據資料管理的需求外,也要考慮資料量規模、預算、作業系統平台、資料庫功能…等等實際專案需求;若以作業系統平台為考量,僅限制在Linux上運作,則MS Office Access、MS SQL Database就無法列入考慮;若非商業用途,而預算又不足時,就可以考慮MySQL或PostgreSQL,端看不同需求,而有不同資料庫選擇。在這裡提供幾個評估因素,讓各位在選擇資料庫產品時可以先進行自我需求分析,以了解資料庫應具備的特性:
評估因素
|
說明
|
---|---|
資料複雜度
|
是否支援有多對多的關係?
是否提供欄位格式限制?日期、數字、長文字?
|
資料量
|
最大的資料儲存筆數?
|
資料查詢需求
|
是否支援SQL查詢?
是否提供AND、OR、部份符合、大於、小於條件查詢?
|
使用者數量
|
同一時間最多使用人數?
|
跨平台要求
|
是否能在Windows、Linux或其他平台運作?
|
商業用途
|
是否用於公司營利之目的?
|
根據上述的幾個評估因素,當在選擇資料庫產品時,下列有幾種建議提供給讀者參考:
評估結果
|
選擇建議
|
---|---|
資料簡單、資料量少、無查詢需求
|
可採用Microsoft Office文書工具,如:Word、Excel等
|
資料簡單、資料量少、簡單的查詢需求
|
可採用類似Microsoft Access工具
|
複雜度高、資料量多、複雜的查詢需求、同時多人連線使用
|
交由系統開發人員評估
|
需安裝在Linux上
|
Microsoft產品皆無法使用
|
非商業用途
|
可採用MySQL、PostgreSQL或其他Open Source資料庫產品
|
在選擇適合的關聯式資料庫後,將繼續為各位介紹「資料庫設計DIY」,敬請期待。