> 哪種連接 InterBase 的方式比較好:BDE, IBX, 還是 IBO ? BDE 是 Borland Database Engine 的縮寫。 IBX 是 InterBase Express 的縮寫,IBX 是開放原始碼的軟體,目前由 Jeff Overcash (TeamB) 負責開發維護。 IBO 是 InterBase Objects 的縮寫,軟體授權採用 TrustWare,使用免 付費,原始碼必須註冊才能取得。作者為 Jason Wharton。 跟 BDE 比起來,IBX 有下列優點: 1.IBX 比 BDE 快(但是注意不要使用 TIBTable)。 2.IBX 不透過 BDE 存取資料庫,用戶端不用安裝 BDE。 3.BDE 自動幫你處理交易,但是每次只允許一筆交易,而 IBX 允許多筆 交易同時進行,但是你得在程式中自行控制交易。 4.BDE 僅支援 IB6 的 Dialect 1,而 IBX 可支援 Dialect 3。 你可以到以下網址取得更詳細的資料: http://www.interbase2000.org/WhitePaper/Connectivity.htm 其中包含了 BDE, IBX 與 IBO 的比較。 另外,IBO 的作者 Jason Wharton 撰寫了一篇 IBO 優於 IBX 的文章, 也很值得參考,網址為 http://www.ibobjects.com/ibo_or_ibx.html。 其中提到了 IBX 處理交易(transaction)的方式較為原始,需要程式員 自行撰寫程式碼處理交易,而且只要開啟資料表就必須開啟一個交易,直 到資料表關閉該交易才被結束,這樣很容易造成一個交易的時間過長(交 易時間應愈短愈好)。如果要使用 IBX 的話,可以搭配 ClientDataSet ,利用 IBX 連接資料庫及傳遞 SQL 命令,而 CDS 則用來作為處理前端 使用者對資料維護的操作需求,當 CDS 的 PacketRecords 屬性設為 -1 時,IBX 資料集在 CDS 取完資料後關閉,交易也會被關閉,這樣就能避 免交易時間過長的缺點。