問題タブ [fts3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
268 参照

sqlite - SQLite 3、FTS3 - 結合クエリ

ネットで入手できる文献を調べて、インターネットで入手できる SQLite のさまざまな JOIN を理解しました。しかし、私の要件を満たすものを見つけることができません。

さまざまなカテゴリに基づいてフィルター操作を実行する必要があり、さらにフィルター処理されたコンテンツから検索操作を実行する必要があります。

ユーザーはブランド Nike を選択し、Item_type = SportShoes ユーザーは 1000 アイテムの結果セットを取得します。今、彼は説明の特定の詳細を「検索」することによって、それらをさらに最小限に抑えたいと考えています。

つまり、最初にデータセットをフィルター処理し、そのデータセット内の特定のテキストを検索するクエリを作成する必要があります (別の方法として、適切な結果を得ることができる単純な JOIN クエリを作成できますが、私のメールの懸念はパフォーマンスです)。良好なパフォーマンスが得られる特定のタイプの JOIN クエリを提案してください。

0 投票する
1 に答える
141 参照

ios - SQLCipher 商用版と FTS3

静的FTS3ライブラリとして sqlite の融合を追加した後、既に使用していFTS3ます-for-iphone-and-ipad/ )。

アプリが検索しているデータベースには著作権で保護されたテキストが含まれているため、SQLCypher の商用バージョンを使用することにしましたFTS3。間違いがなければ、既に有効になっています。http://sqlcipher.net/support/に続いて SqlCipher 静的ライブラリを追加し、以前に追加した sqlite 静的ライブラリを削除しましたが、これは正しいですか? libsqlcipher.aプロジェクトにのみ保持する必要がありますか?

0 投票する
1 に答える
1494 参照

android - Sqlite FTS3 一致または

Android プロジェクトの sqlite で FTS3 を使用しています。問題は、「または」という単語を検索すると、データベースがより多くの単語を期待することです。

これは、単語が「または」の場合を除いてうまく機能します。

データベースで「または」という単語を検索するにはどうすればよいですか?

エラーは次のとおりです。

ありがとう

0 投票する
1 に答える
162 参照

android - FTS テーブルの 3 つ以上の値に一致

searchsearch_engの2 つのFTSテーブルがあります。search_engから一致した単語のentry_idを取得しようとしています。次に、それらのentry_idに従って検索から値を取得します。しかし、以下に示す方法でそれを実装しようとすると、エラーが発生します: SQL logic error。これは、2 つ以上の値をMATCHするためですか? そうでない場合、私が間違っていることはありますか?

スタックトレース:

09-26 21:48:14.937: E/AndroidRuntime(29495): 致命的な例外: メイン 09-26 21:48:14.937: E/AndroidRuntime(29495): android.database.sqlite.SQLiteException: SQL ロジック エラーまたは欠落しているデータベース09-26 21:48:14.937: E/AndroidRuntime(29495): android.database.sqlite.SQLiteQuery.native_fill_window(ネイティブ メソッド) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.database で.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:73) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:299) 09-26 21 :48:14.937: E/AndroidRuntime(29495): android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:272) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.support で。 v4.widget.CursorAdapter.getCount(CursorAdapter.java:202) 09-26 21:48:14.937: E/AndroidRuntime(29495):android.widget.ListView.setAdapter(ListView.java:489) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.joericharduz.akita.MainActivity.displayListView(MainActivity.java:147) 09- 26 21:48:14.937: E/AndroidRuntime(29495): com.joericharduz.akita.MainActivity.access$0(MainActivity.java:136) 09-26 21:48:14.937: E/AndroidRuntime(29495): com .joericharduz.akita.MainActivity$1.onTextChanged(MainActivity.java:122) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.widget.TextView.sendOnTextChanged(TextView.java:6603) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.widget.TextView.handleTextChanged(TextView.java:6650) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.widget.TextView で$ChangeWatcher.onTextChanged(TextView.java:6794) 09-26 21:48:14.937: E/AndroidRuntime(29495): Android で。text.SpannableStringBuilder.sendTextChange(SpannableStringBuilder.java:889) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.text.SpannableStringBuilder.change(SpannableStringBuilder.java:352) 09-26 21:48: 14.937: E/AndroidRuntime(29495): android.text.SpannableStringBuilder.change(SpannableStringBuilder.java:269) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.text.SpannableStringBuilder.replace(SpannableStringBuilder) で.java:432) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:409) 09-26 21:48:14.937: E/AndroidRuntime(29495) ): android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:28) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:654) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.view.inputmethod.BaseInputConnection.commitText(BaseInputConnection.java:180) 09-26 21:48:14.937: E/AndroidRuntime(29495) : com.android.internal.widget.EditableInputConnection.commitText(EditableInputConnection.java:120) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper) .java:283) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:79) 09-26 21:48:14.937 : E/AndroidRuntime(29495): android.os.Handler.dispatchMessage(Handler.java:99) 09-26 21:48:14.937: E/AndroidRuntime(29495): android.os.Looper.loop(Looper. java:130) 09-26 21:48:14.937: E/AndroidRuntime(29495):android.app.ActivityThread.main(ActivityThread.java:3687) 09-26 21:48:14.937: E/AndroidRuntime(29495): java.lang.reflect.Method.invokeNative(Native Method) 09-26 21: 48:14.937: E/AndroidRuntime(29495): java.lang.reflect.Method.invoke(Method.java:507) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal .os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 09-26 21:48:14.937: E/AndroidRuntime(29495): dalvik.system.NativeStart.main(ネイティブ メソッド) でReflect.Method.invoke(Method.java:507) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) で 09 -26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 09-26 21:48:14.937: E/AndroidRuntime(29495): dalvik.system.NativeStart.main (ネイティブ メソッド) でReflect.Method.invoke(Method.java:507) 09-26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) で 09 -26 21:48:14.937: E/AndroidRuntime(29495): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 09-26 21:48:14.937: E/AndroidRuntime(29495): dalvik.system.NativeStart.main (ネイティブ メソッド) で