我已經寫了這個線程,因爲我已經打了三個整天這個問題!在windows手機中的SQLCE性能很差
基本上,我有一個程序收集一個大的CSV文件,並將其用作本地SQLCE數據庫的輸入。 對於這個CSV文件中的每一行(代表某種對象,我們稱之爲「狗」),我需要知道這條狗是否已經存在於數據庫中。 如果它已經存在,請不要將其添加到數據庫中。 如果它不存在,請在數據庫中添加一個新行。
問題是,每個查詢大約需要60毫秒(一開始,當數據庫爲空時),並且當數據庫大約爲1000行時,它會上升到大約80ms。 當我必須通過1000行(在我看來並不多)時,這需要大約70000毫秒= 1分10秒(只是爲了檢查數據庫是否是最新的),太慢了!考慮到這一數量可能有一天會超過10000行,我不能指望我的用戶在他的數據庫同步之前等待超過10分鐘。 我試過使用編譯後的查詢來代替,但這並沒有提高性能。
即時搜索的字段是一個字符串(這是主鍵),它被索引。
如果有必要,我可以用代碼更新這個線程,這樣你就可以看到我做了什麼。在Windows Phone