【轉】Firebird資料庫值得信賴嗎?為什麼我要在開發中選擇它?

tirecoed發表於2010-12-21

 

Firebird資料庫值得信賴嗎?為什麼我要在開發中選擇它? 

1、Firebird是一個真正的關聯式資料庫,支援儲存過程、檢視、觸發器、事務等大型關聯式資料庫的所有特性;

2、Firebird支援SQL92的絕大部分命令,並且支援大部分SQL99命令,新版Firebird 2.0對SQL99的支援更完整;

3、Firebird原始碼基於成熟的商業資料庫Interbase,有良好的穩定性,與Interbase有良好的相容性;

4、不用考慮授權費用(免費),不用當心將來有一天你或你的客戶因為使用盜版而被資料庫開發商告上法庭;

5、釋出簡易,安裝檔案只有幾M,且高度可定製,客戶端的分發也很簡單,只需一個DLL檔案;

6、Firebird的一嵌入式伺服器版本,不用安裝,直接執行,基於單機開發首選;

7、Firebird的執行效率非常高;

8、具備高度可移植性,可在Linux,Unix,MacOS,Windows,Solaris系統下執行,而且資料庫格式完全一樣,不用修改;

9、開發環境支援良好,Delphi,C++Builder不用通過ODBC連線,直接用原生開發介面開發基於Firebird的程式。

 

 

 

還有其他特性:

1.支援事件,這個特性很好,很多商業資料庫都沒有,如sql server,DB2都沒有.

2. 支援陣列欄位,這個sql server還不支援.

3  支援計算欄位,這個sql server還不支援.不過作用不是很大.

4  觸發器功能比很多商業資料庫都強大

好處講了,我現在講企業級應用還缺少的地方(^..^大家不要對我扔香蕉呀):

1. 不支援分散式服務, 如在觸發器中或儲存過程中也訪問其他的FB資料庫現在沒有解決方法.只能通過前臺程式進行解決.

2 Supserver模式不的執行緒不支援多處理器.這個可能要等到FB3.0才能解決.

3 不支援資料分發與訂閱,現在MIS系統一般都要求資料即集中又獨立,這個就要資料的分發與訂閱服務.當然即使支援服務,寫這樣的管理系統時資料庫設計要需要很多的技巧的.不過通過第三方工具可以支援.見網站:www.meta.com.au 有一個FBReplicator工具

4 不支援全文檢索,不過可以通過第三方工具支援,見以下網站:http://www.codeproject.com/cs/database/FulltextFirebird.asp

 

現講些雞毛算皮的

1 不支增量備份,只有完全部分.對於特大的資料庫時,完全備分就會有些不便了.

2 沒有事務日誌(因是MGA),也就是不存在日誌備份,不過這個有不有作用不是很大.

3 基本的內建函式缺少.寫儲存過程與觸發器時得找些第三方函式庫,或自己寫自定義函式,這個即有壞處也有好處,壞處是影響了開發效率,好處是程式設計師可以寫出功能強大的適合本系統的函式.相當於sql server的自定義儲存過程.

4 安全性不好,破解FB的資料庫密碼相當容易,只要把原生secury.fdb資料庫覆蓋你伺服器同名的資料庫,sysdba管理員的密碼就恢復到masterkey ,這個只能怪開源太透明什麼都告訴你,假設你知sql server 安全資料資料存放在什麼地方,我相信每個人破解sa 密碼也是很容易的.

5 過程與觸發器程式碼不能加密碼,這樣自己系統的業務邏輯很容易被洩露.像sql server可以加蜜,不過其加密是假,在網上隨便下個工具就可以破解,不過sql server可以寫成dll形式的外部儲存過程(哈哈,就是fb的自定義函式)

6 資料精度不可,不過對一般的中小型應用來說是夠了.

7 不支援臨時表,這個比sql server退步點,不過他有外部檔案表,哈哈比sql server有進步. 

 

 

7 不支援臨時表,這個比sql server退步點,不過他有外部檔案表,哈哈比sql server有進步

什麼是外部檔案表? 

 

 

這個指的是在firebird中資料庫的表,他的表資料是以檔案形式存在磁的,例如:

CREATE TABLE HELL

EXTERNAL FILE ‘extal.fs‘ (

  ADDREE CHAR(10) NOT NULL,

  NAME CHAR(10))

 

以上將建一個extal.fs的檔案來儲存表HELL的資料,extal.fs檔案的路徑由FB的配置檔案中的ExternalFileAccess選項決定,如ExternalFileAccess=c:/windows 那麼extal.fs的全路徑是:

c:/windows/extal.fs 

 

這種表用來與其他的資料來源交源資料是相當方便的. 

 

http://www.360doc.com/content/07/0913/21/24964_741983.shtml

 

相關文章