2013-02-05 77 views
2

我想要在DART測試sqlite,但是我能找到的唯一實現是在Github上的Sam McCall,但它已過時。雖然我可以嘗試將其更新到最新版本,但我對Dart還不是很熟悉。控制檯Dart應用程序的Sqlite實現

我也讀過,但一直未能確認在VM中提供了sqlite訪問權限,但僅限於非html程序。我讀到的報價中寫道:「可能還有其他問題,因爲Dart可執行文件現在包含sqlite庫,作爲NSS(Network Security Services,來自Mozilla)的一部分,用於在dart中實現安全套接字:io。」 。正如我所說,我不確定這是否正確。

我想用「dart:html」來使用sqlite,而「dart.io」不能與「dart.html」一起使用,但是在控制檯應用程序中使用它將是一個開始。

雖然dart提供了indexed_db,但我沒有看到它作爲sql的替代品。而且,儘管數據庫訪問可能主要被認爲是服務器端的要求,但客戶端顯然也需要(例如,當離線時等)。

還有可能轉換爲js的問題,但這不是我的問題。

任何與此有關的幫助將不勝感激。

+0

與'dart:html'一起使用SQLite是一個禁忌。 dart:html庫是用於在瀏覽器中進行編程的(實際上,它只能在瀏覽器中使用)。在瀏覽器中編程時,僅限於瀏覽器爲您提供的內容。有IndexedDB,這就是它。過去,WebSQL基本上是瀏覽器中的SQLite,但這是歷史。 – Ladicek

+0

在瀏覽器外部,或在連接到本地Dart服務器的瀏覽器內部?我在Indexed_db中發現的問題是,雖然它可能完成我想要的大部分或全部工作,但當涉及到應用程序之外的維護時,我想要並可能需要使用sql。然後,有Dart服務器端和sql訪問被考慮。 –

回答

0

正如Ladislav提到的,您不能在dart:html中使用sqlite,因爲基於瀏覽器的應用程序只能訪問瀏覽器平臺提供的內容。

WebSQL基本上是Sqlite。它仍然存在,在移動設備上得到很好的支持,但規範已經死亡。如果這就是你想要的,它應該工作得很好。

對於命令行Dart,您可能需要查看SqlJocky,它是Dart命令行VM的MySQL驅動程序。看看這裏:https://github.com/jamesots/sqljocky

希望幫助!

+0

謝謝Seth。我在這個階段是新手,但是,我認爲瀏覽器SQL支持是必不可少的(對於某些應用程序)。您的評論是關於WebSql和第三方的。我接受Goog正在爲此付費,並且必須首先滿足他們的需求。順便說一句,飛鏢是太棒了 - 21世紀(恕我直言)。 –

+0

塞思,你可能知道以下內容。它是相關的嗎? 「請注意,sqlite現在靜態鏈接到Dart可執行文件中,作爲安全網絡支持的一部分,但它不會暴露給用戶(或擴展?)。如果此擴展名非常有用,那麼看看它是否很好可能會使用已經在可執行文件中的庫,但這可能是不可能的,可能存在安全問題,或者我們不公開用於鏈接到擴展的庫函數請注意,我們確實公開了Dart API功能,這是在可執行文件,擴展名,雖然......「 –

+0

布賴恩,我不知道。有趣! –

相關問題