2017-05-26 16 views
-1

我正在C/C + +中的項目,我需要加快一些SQLite查詢。如何使用SQLite PRAGMA threads = X;到C++代碼

在我的計算機中,大約需要4.5秒並返回214.000行。

我有一個想法是使用:

PRAGMA threads = 2; 

查詢之前。

我在sqlitebrowser試過了,查詢花費了2秒,這在我的情況下是一個不錯的改進。

問題是:我如何在我的C++代碼中做同樣的事情? 我在PRAGMA後連接了查詢,但我沒有任何改進。

我也試過sqlite3_limit(db,SQLITE_LIMIT_WORKER_THREADS,4);沒有運氣。 任何建議將不勝感激。

+0

請發佈速度太慢的查詢以及您的數據庫架構。也許有一種更好的方法。 – zwol

+0

不幸的是,我不能這樣做,因爲這些數據是私人的,我的公司擁有它們。我們確信查詢是可以的,並且使用PRAGMA線程會更好。我只是無法弄清楚如何在C/C++中使用它。 – imoutidi

+2

問題的原因很可能與線程無關,但沒有更多信息,我認爲任何人都無法幫助您。 – varro

回答

0

PRAGMA語句像其他任何SQL語句一樣,只是執行它(單獨)。

+0

我做到了,但沒有奏效。 – imoutidi

+0

您可能有錯誤的SQLite版本,或編譯錯誤,或者沒有正確執行PRAGMA,或者沒有正確連接。 –