2010-07-27 63 views

回答

8

事情比我預期的要好得多。我現在有一個Android手機(HTC Desire,Android 2.2),我做了第一個測試。

到目前爲止打開和關閉數據庫相對較慢(第二次打開現有數據庫需要0.2秒,關閉大約0.2秒),但除此之外,它看起來像H2在Android上表現相當好,即使Dalvik VM還沒有像桌面JVM那樣優化。現在提供具體的數字還爲時尚早,但Android現在是一個受支持的平臺。

+0

您好托馬斯,你能提供一個鏈接或教程來整合H2數據庫與Android並開始使用它。 – Vignesh 2011-08-29 07:19:39

+0

沒有一步一步的教程,唯一的文檔是http://h2database.com/html/tutorial.html#android – 2011-08-29 08:06:09

+0

我已閱讀它,只有在那之後,我正在尋找一個教程,已經發布了一個關於這個問題,請看看http://stackoverflow.com/questions/7204785/integrate-h2-database-with-android – Vignesh 2011-08-29 08:24:41

3

我也會對Android上H2數據庫的實際性能測試非常感興趣。我認爲H2會比SQLite慢很多,主要是因爲Android上的虛擬機還不是那麼棒。 Android 2.2的性能有所提高,但我認爲還是有很大的不同。我的猜測是H2目前慢了大約10倍。但這只是一個猜測。

關於Unicode問題:在將字符串存儲到SQLite之前,如何將字符串轉換爲UTF-8?

+0

我的問題是像LOWER和UPPER這樣的函數只能用於ASCII字符,因爲Android上的SQLite沒有鏈接到libicu。 – Eduardo 2010-07-27 20:24:52

+1

我知道這是一個痛苦,但是如何存儲一個額外的列'uppercased'版本數據?因此,您不使用CREATE TABLE ADDRESS(NAME VARCHAR(255)),而使用CREATE TABLE ADDRESS(NAME VARCHAR(255),NAME_UPPER VARCHAR(255)) – 2010-07-28 06:39:50

+0

您只能使用TEXT列;無論如何,SQLite會忽略VARCHAR長度。 – 2010-09-06 14:06:48