2015-06-09 85 views
0

我對數據庫和訪問在線數據非常陌生。我有一個使用Firebird數據庫的網站,我想將數據提取到我的應用程序。但是,我沒有看到任何對Swift的支持。 Firebird將與基於快速的應用兼容嗎?如果是這樣,我需要做什麼才能開始?Firebird和Swift的兼容性?

回答

3

Swift需要來Firebird,而不是反過來。最簡單的解決方案雖然不是一件容易的事情,但它創建了一個Swift包裝庫來連接C庫API和映射數據類型。研究用於Ruby,Python,PHP或Go的現有庫可能證明是有用的。熟悉C將是必不可少的。

或者,如果您正在尋找一份無償的第二份工作,您可以創建一個講述本地有線協議的新庫。成熟的例子包括Java JDBC驅動程序和.NET提供程序。不太成熟,但更易於理解的是最近的Go圖書館。熟悉或有能力學習有線協議將是至關重要的。

C庫和wire協議都是非常低級的,所以在獲得第一個基礎之前需要進行重大投資。

你並不是真的想要公開Firebird數據庫到開放的互聯網,所以如果你正在創建一個移動應用程序,最快和最安全的解決方案是在你的數據庫前面用一種語言創建一個Web服務已經支持Firebird並讓您的應用程序與Web服務進行數據交談。這更安全,讓您可以更靈活地更新數據庫模式,並且通常會更快,因爲Firebird有線協議非常健談,使得高延遲連接的操作極其緩慢。您的Web服務可以連接池,甚至緩存經常訪問的數據,以贏取全部的勝利。

通過創建Web服務,您可以在通過編寫自己的驅動程序檢索單個記錄之前發運應用。

+0

你是什麼意思的網絡服務?顯示數據庫數據的實際網站是否符合Web服務的要求?如果是這樣,這是否意味着我能夠從域名網站獲取數據? – Tamarisk

+0

網絡服務是爲與其他程序交談而優化的網站。它不是提供容易讓人閱讀但很難讓程序解析的HTML,而是提供數據。數據通常用X​​ML或JSON格式化,但可以採用客戶端程序可以解析的任何格式。爲數據「刮」HTML頁面非常脆弱 - 很容易通過對網站外觀進行微調來打破。 –